0
ASIOコールバックでエラーがスローされた場合、非同期処理を再開するのは安全ですか?ブーストASIO:ハンドラ例外からの回復
要するに、次のコードにはメリットがありますか?
void runAsioLoop()
{
boost::asio::io_service::work work(this->m_ioService);
boost::system::error_code unused;
while (m_running) {
try {
this->m_ioService.run(unused);
this->m_ioService.reset();
} catch (...) {
std::cerr << "*** An error happened\n";
}
}
}
感謝を。 run()が何もしなくても上記のコードサンプルが100%CPU使用率を引き起こすのではないでしょうか?私は自分のスレッドでそれぞれのioserviceを実行します。 – James
ループの終了が何もない場合、通常のように – sehe