Boost C++ 库

世界上评价最高、设计最精巧的 C++ 库项目之一。 Herb SutterAndrei Alexandrescu, C++ 编码标准

面向缓冲区的异步读取流要求 - Boost C++ 函数库
PrevUpHomeNext

如果类型 X 满足下面列出的要求,则它满足 AsyncReadStream 要求。

在下表中,a 表示类型为 X 的值,mb 表示满足 MutableBufferSequence 要求的(可能是 const 的)值,而 t 是一个完成令牌。

表 6. AsyncReadStream 要求

操作

type

语义、前/后置条件

a.get_executor()

满足 Executor 要求的类型。

返回关联的 I/O 执行器。

a.async_read_some(mb,t)

返回类型根据 异步操作的要求确定。

满足 读取操作和具有完成签名 void(error_code ec, size_t n)异步操作的要求。

如果 buffer_size(mb) > 0,则启动一个异步操作,将数据从流 a 中读取一个或多个字节到缓冲区序列 mb 中。如果成功,ec 将被设置为 !ectrue,而 n 是读取的字节数。如果发生错误,ec 将被设置为 !!ectrue,而 n 为 0。如果已从流中读取了所有数据,并且流已正常关闭,则 ecstream_errc::eof,而 n 为 0。

如果 buffer_size(mb) == 0,则操作立即完成。ec 将被设置为 !ectrue,而 n 为 0。



PrevUpHomeNext