我正在将cli库移植到boost
1.70版
它使用boost::asio
来实现一个简单的tcp服务器。
在我的代码中的某个地方,我有一个boost::asio::ip::tcp::socket
对象,我需要在同一个io_context
中执行自定义函数。
直到1.69版,以下代码都可以:
boost::asio::io_context& ioc = socket.get_io_service();
ioc.post( [](){ /* my custom code */ } );
但是对于1.70版:
socket
不再公开方法get_io_service
io_context::post
已弃用我尝试过:
boost::asio::execution_context& ioc = socket.get_executor().context();
boost::asio::post(ioc, [](){ /* my custom code */ } );
但不能编译。
您能帮我将代码移植到1.70版吗?