我想知道传递给上述方法的对象的生命周期是什么。
异步解析
ip::basic_resolver::async_resolve(const query & q, ResolveHandler handler);
(1) 在调用处理程序之前,我是否需要让解析器保持活动状态?(是)
(2) async_resolve 是否复制query
对象?(我正在传递在堆栈上创建的一个 - 是的)
{
boost::asio::ip::tcp::resolver::query query(host_, port_);
resolver_.async_resolve(query, );
}
(3)boost::asio::ip::tcp::resolver::iterator
在处理程序中按值返回?(是的)
异步连接
template<..> void async_connect(basic_socket<Protocol, SocketService> & s,
Iterator begin, ComposedConnectHandler h);
(4) 是begin
按值传递吗?(是)
(5)我需要维持resolver
生命吗?(不)