Boost C++ 库

...是世界上备受推崇和精心设计的 C++ 库项目之一。 Herb SutterAndrei Alexandrescu,《C++ 编码规范

写入 (16个重载中的 6 个) - Boost C++ 函数库
PrevUpHomeNext

在返回之前,将所有提供的数据写入流。

template<
    typename SyncWriteStream,
    typename DynamicBuffer_v1>
std::size_t write(
    SyncWriteStream & s,
    DynamicBuffer_v1 && buffers,
    boost::system::error_code & ec,
    constraint_t< is_dynamic_buffer_v1< decay_t< DynamicBuffer_v1 > >::value >  = 0,
    constraint_t< !is_dynamic_buffer_v2< decay_t< DynamicBuffer_v1 > >::value >  = 0);

此函数用于将指定数量的字节数据写入流。调用将阻塞,直到以下任一条件为真。

  • supplied 动态缓冲区序列中的所有数据都已写入。
  • 发生错误。

此操作是根据对流的 `write_some` 函数的零次或多次调用来实现的。

参数

s

要写入数据的数据流。类型必须支持 SyncWriteStream 概念。

缓冲区

将要写入数据的动态缓冲区序列。成功写入的数据将自动从缓冲区中消耗。

ec

用于指示发生何种错误(如果有)。

返回值

传输的字节数。

备注

此重载等同于调用

boost::asio::write(
   s, buffers,
   boost::asio::transfer_all(), ec);

PrevUpHomeNext