The read
function is a composed operation
that reads a certain amount of data from a stream before returning.
Attempt to read a certain amount of data from a stream before returning.
template< typename SyncReadStream, typename MutableBufferSequence> std::size_t read( SyncReadStream & s, const MutableBufferSequence & buffers, typename constraint< is_mutable_buffer_sequence< MutableBufferSequence >::value >::type = 0); » more... template< typename SyncReadStream, typename MutableBufferSequence> std::size_t read( SyncReadStream & s, const MutableBufferSequence & buffers, asio::error_code & ec, typename constraint< is_mutable_buffer_sequence< MutableBufferSequence >::value >::type = 0); » more... template< typename SyncReadStream, typename MutableBufferSequence, typename CompletionCondition> std::size_t read( SyncReadStream & s, const MutableBufferSequence & buffers, CompletionCondition completion_condition, typename constraint< is_mutable_buffer_sequence< MutableBufferSequence >::value >::type = 0); » more... template< typename SyncReadStream, typename MutableBufferSequence, typename CompletionCondition> std::size_t read( SyncReadStream & s, const MutableBufferSequence & buffers, CompletionCondition completion_condition, asio::error_code & ec, typename constraint< is_mutable_buffer_sequence< MutableBufferSequence >::value >::type = 0); » more... template< typename SyncReadStream, typename DynamicBuffer_v1> std::size_t read( SyncReadStream & s, DynamicBuffer_v1 && buffers, typename constraint< is_dynamic_buffer_v1< typename decay< DynamicBuffer_v1 >::type >::value >::type = 0, typename constraint< !is_dynamic_buffer_v2< typename decay< DynamicBuffer_v1 >::type >::value >::type = 0); » more... template< typename SyncReadStream, typename DynamicBuffer_v1> std::size_t read( SyncReadStream & s, DynamicBuffer_v1 && buffers, asio::error_code & ec, typename constraint< is_dynamic_buffer_v1< typename decay< DynamicBuffer_v1 >::type >::value >::type = 0, typename constraint< !is_dynamic_buffer_v2< typename decay< DynamicBuffer_v1 >::type >::value >::type = 0); » more... template< typename SyncReadStream, typename DynamicBuffer_v1, typename CompletionCondition> std::size_t read( SyncReadStream & s, DynamicBuffer_v1 && buffers, CompletionCondition completion_condition, typename constraint< is_dynamic_buffer_v1< typename decay< DynamicBuffer_v1 >::type >::value >::type = 0, typename constraint< !is_dynamic_buffer_v2< typename decay< DynamicBuffer_v1 >::type >::value >::type = 0); » more... template< typename SyncReadStream, typename DynamicBuffer_v1, typename CompletionCondition> std::size_t read( SyncReadStream & s, DynamicBuffer_v1 && buffers, CompletionCondition completion_condition, asio::error_code & ec, typename constraint< is_dynamic_buffer_v1< typename decay< DynamicBuffer_v1 >::type >::value >::type = 0, typename constraint< !is_dynamic_buffer_v2< typename decay< DynamicBuffer_v1 >::type >::value >::type = 0); » more... template< typename SyncReadStream, typename Allocator> std::size_t read( SyncReadStream & s, basic_streambuf< Allocator > & b); » more... template< typename SyncReadStream, typename Allocator> std::size_t read( SyncReadStream & s, basic_streambuf< Allocator > & b, asio::error_code & ec); » more... template< typename SyncReadStream, typename Allocator, typename CompletionCondition> std::size_t read( SyncReadStream & s, basic_streambuf< Allocator > & b, CompletionCondition completion_condition); » more... template< typename SyncReadStream, typename Allocator, typename CompletionCondition> std::size_t read( SyncReadStream & s, basic_streambuf< Allocator > & b, CompletionCondition completion_condition, asio::error_code & ec); » more... template< typename SyncReadStream, typename DynamicBuffer_v2> std::size_t read( SyncReadStream & s, DynamicBuffer_v2 buffers, typename constraint< is_dynamic_buffer_v2< DynamicBuffer_v2 >::value >::type = 0); » more... template< typename SyncReadStream, typename DynamicBuffer_v2> std::size_t read( SyncReadStream & s, DynamicBuffer_v2 buffers, asio::error_code & ec, typename constraint< is_dynamic_buffer_v2< DynamicBuffer_v2 >::value >::type = 0); » more... template< typename SyncReadStream, typename DynamicBuffer_v2, typename CompletionCondition> std::size_t read( SyncReadStream & s, DynamicBuffer_v2 buffers, CompletionCondition completion_condition, typename constraint< is_dynamic_buffer_v2< DynamicBuffer_v2 >::value >::type = 0); » more... template< typename SyncReadStream, typename DynamicBuffer_v2, typename CompletionCondition> std::size_t read( SyncReadStream & s, DynamicBuffer_v2 buffers, CompletionCondition completion_condition, asio::error_code & ec, typename constraint< is_dynamic_buffer_v2< DynamicBuffer_v2 >::value >::type = 0); » more...
Header: asio/read.hpp
Convenience header: asio.hpp