为什么 boost asio 中的 async_read 将 const MutableBufferSequence 作
Why does async_read in boost asio has const MutableBufferSequence as the second arguments?
boost asio 库具有async_read功能。
template<
typename AsyncReadStream,
typename MutableBufferSequence,
typename ReadHandler>
void-or-deduced async_read(
AsyncReadStream & s,
const MutableBufferSequence & buffers,
ReadHandler handler);
此函数用于从流中异步读取一定数量的字节数据。结果将放入第二个参数 MutableBufferSequence。常量是什么意思?因为缓冲区很快就会被修改?
MutableBufferSequence
是MutableBuffer
s的容器。MutableBuffer
是对可变内存的固定长度区域的引用。请注意,它本身不包含内存。
在调用期间,MutableBufferSequence 被复制(可能多次(并存储在异步操作中。
请注意,唯一被复制的内容是对可变内存区域的引用,而不是内存本身。