jjzjj

CompletionToken

全部标签

c++ - boost::asio::spawn yield 作为回调

我正在尝试使用boost::asio::spawn协程重写项目。项目的某些部分无法更改。比如存储协议(protocol)库也是用boost::asio写的,但是没有协程。问题是如何将yield_context转换为普通回调(boost::function对象或经典仿函数)。这就是我们在存储库API中的内容:voidasync_request_data(uint64_titem_id,boost::functioncallback);从示例中我们知道,asioyield上下文可以这样使用:my_socket.async_read_some(boost::asio::buffer(data

c++ - boost::asio::spawn yield 作为回调

我正在尝试使用boost::asio::spawn协程重写项目。项目的某些部分无法更改。比如存储协议(protocol)库也是用boost::asio写的,但是没有协程。问题是如何将yield_context转换为普通回调(boost::function对象或经典仿函数)。这就是我们在存储库API中的内容:voidasync_request_data(uint64_titem_id,boost::functioncallback);从示例中我们知道,asioyield上下文可以这样使用:my_socket.async_read_some(boost::asio::buffer(data