Attempt to read a certain amount of data from a stream before returning.
template< typename SyncReadStream, typename Allocator> std::size_t read( SyncReadStream & s, basic_streambuf< Allocator > & b);
This function is used to read a certain number of bytes of data from a stream. The call will block until one of the following conditions is true:
This operation is implemented in terms of zero or more calls to the stream's read_some function.
The stream from which the data is to be read. The type must support the SyncReadStream concept.
The basic_streambuf
object into which the data will be read.
The number of bytes transferred.
Thrown on failure.
This overload is equivalent to calling:
asio::read( s, b, asio::transfer_all());