Прочтите некоторые данные из розетки.
template<
    typename MutableBufferSequence>
std::size_t read_some(
    const MutableBufferSequence & buffers);
Эта функция используется для чтения данных из потокового сокета. Функция вызов будет блокироваться до тех пор, пока один или несколько байтов данных не будут успешно прочитаны или пока не произойдет ошибка.
- buffers
 
Один или несколько буферов, в которые будут читаться данные.
 
 
Количество байтов читается.
- boost::system::system_error
 
Попал на провал. Код ошибки boost::asio::error::eof указывает, что соединение было закрыто пэром.
 
 
Операция read_some не может прочитать все запрашиваемое количество байтов. Рассмотрим использование функции read, если вам нужно убедиться, что запрашиваемое количество данных читается до завершения операции блокировки.
Для чтения в одном буфере данных используйте функцию buffer следующим образом:
socket.read_some(boost::asio::buffer(data, size));
См. buffer документацию для информации о чтении в нескольких буферах за один ход, и как использовать ее с массивами, увеличить::array или std::vector.