Attempt to read a certain amount of data at the specified offset before returning.
template< typename SyncRandomAccessReadDevice, typename Allocator> std::size_t read_at( SyncRandomAccessReadDevice & d, uint64_t offset, basic_streambuf< Allocator > & b);
This function is used to read a certain number of bytes of data from a random access device at the specified offset. 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 device's read_some_at function.
The device from which the data is to be read. The type must support the SyncRandomAccessReadDevice concept.
The offset at which the data will be read.
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_at( d, 42, b, asio::transfer_all());