如何从Boost 1.68的链中获取io_context?

时间:2019-05-27 14:24:19

标签: boost-asio

我有一个boost::asio::strand<boost::asio::io_context::executor_type>对象,需要获取它的io_context。我以为可以使用get_io_context(),但已不建议使用。然后我以为我可以使用context(),但返回一个boost::asio::execution_context
我看不到如何将其转换为io_context的实例...

那么,如何在增强1.68中获得绞线的io_context

1 个答案:

答案 0 :(得分:2)

在链实例上调用get_inner_executor,然后在执行程序上调用context

#include <boost/asio.hpp>
int main() {
    boost::asio::io_context io;
    boost::asio::strand<boost::asio::io_context::executor_type> strand{io.get_executor()};

    boost::asio::io_context::executor_type executor = strand.get_inner_executor();
    boost::asio::io_context& refIO = executor.context();
}