我知道在 async_write 工作时操纵 streambuf 是不安全的,正如 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;