30

我阅读了 boost asio http 服务器示例代码(参见http://www.boost.org/doc/libs/1_54_0/doc/html/boost_asio/example/cpp11/http/server/connection.cpp)并发现auto self(shared_from_this());变量是已在捕获范围 ( [this, self]) 中使用。但是在 lambda 函数中没有使用 self 变量。那么这样做有什么好处呢?

4

1 回答 1

45

这样做是为了确保connection对象比异步操作更有效:只要 lambda 处于活动状态(即异步操作正在进行中),connection实例也处于活动状态。

于 2013-10-14T19:54:38.133 回答