Boost C++ 库

……在世界上最受推崇、设计最精湛的 C++ 库项目中名列前茅。 Herb SutterAndrei Alexandrescu《C++ 编码标准》

read (16 个重载中的第 13 个) - Boost C++ 函数库
PrevUpHomeNext

尝试从流中读取指定数量的数据,然后返回。

template<
    typename SyncReadStream,
    typename DynamicBuffer_v2>
std::size_t read(
    SyncReadStream & s,
    DynamicBuffer_v2 buffers,
    constraint_t< is_dynamic_buffer_v2< DynamicBuffer_v2 >::value >  = 0);

此函数用于从流中读取指定数量的字节数据。调用将阻塞,直到满足以下任一条件:

  • 指定的动态缓冲区序列已满(即已达到最大大小)。
  • 发生错误。

此操作通过零次或多次调用流的 read_some 函数来实现。

参数

s

要从中读取数据的流。类型必须支持 SyncReadStream 概念。

缓冲区

将要读取数据的动态缓冲区序列。

返回值

传输的字节数。

异常

boost::system::system_error

失败时抛出。

备注

此重载等同于调用

boost::asio::read(
   s, buffers,
   boost::asio::transfer_all());

PrevUpHomeNext