Boost 1.52.0の時点でboost::asio::ip::tcp::acceptor
とboost::asio::ip::tcp::socket
の両方が非スレッドセーフとしてマークされている場合、tcp::acceptor
現在ブロックしaccept()
ているスレッドを別のスレッドからシャットダウンすることは可能ですか?
私は呼び出しを見てきましたが、スレッドセーフでboost::asio::io_service::stop()
あるため、これは可能に見え ます。io_service
これio_service
により、ソケットで行われている処理が完了するまで、イベント ループが実行されたままになりますか?
これはより大きなプログラムの一部と同じくらい単純なイベントループであり、非同期が行うことを理解する正当な理由なしに追加のスレッドを作成したくないため、私は同期的に動作しています。