我知道操作streambuf是不安全的,而async_write正如asio作者在boost邮件列表中所说的那样工作。我想知道的是,在async_read之后操纵streambuf是否安全?
示例:
async_read(socket_, recv_streambuf_, ...);
// manipulated while async_read is working
// for example, after I call async_read,
recv_streambuf_.consume(2);
// or something advance, like this...
int var;
std::istream recv_is(recv_streambuf_);
recv_is >> var;
答案 0 :(得分:1)
执行async_read回调时,您应该可以使用streambuf执行任何操作。回调让我们知道asio何时完成使用内存。