Попытка прочитать определенное количество данных из потока перед возвращением.
template<
typename SyncReadStream,
typename Allocator>
std::size_t read(
SyncReadStream & s,
basic_streambuf< Allocator > & b);
Эта функция используется для чтения определенного количества байтов данных из потока. Призыв будет блокироваться до тех пор, пока одно из следующих условий не будет правдой:
- Поставляемый буфер полный (то есть он достиг максимального размера).
- Произошла ошибка.
Эта операция выполняется с точки зрения нулевых или более звонков на функцию read_some потока.
- s
Поток, из которого следует читать данные. Тип должен поддерживать концепцию SyncReadStream.
- b
basic_streambuf объект, на который данные будут читаться.
Количество переведенных байтов.
- boost::system::system_error
Потерпеть неудачу.
Эта перегрузка эквивалентна вызову:
boost::asio::read(
s, b,
boost::asio::transfer_all());