鉴于boost::asio::ip::tcp::acceptor
和boost::asio::ip::tcp::socket
都被标记为 Boost 1.52.0 的非线程安全,是否可以从单独的线程关闭tcp::acceptor
当前阻塞?accept()
我看过调用boost::asio::io_service::stop()
,这看起来可能 io_service
是线程安全的。这会让io_service
事件循环一直运行到套接字上的任何处理完成吗?
我正在同步操作,因为这是作为更大程序的一部分的简单事件循环,并且不想在没有充分理由的情况下创建额外的线程,我理解 async 会这样做。