boost库asio详解2——io_service::run函数无任务时退出的问题
来源:互联网 发布:淘宝亏本卖 编辑:程序博客网 时间:2024/06/06 04:34
io_service::work类可以使io_service::run函数在没有任务的时候仍然不返回,直至work对象被销毁。
test_asio_nowork()执行结果:
test_asio_work()的执行结果:
- void test_asio_nowork()
- {
- boost::asio::io_service ios;
- PRINT_DEBUG("ios before");
- ios.run();
- PRINT_DEBUG("ios end");
- }
- void test_asio_work()
- {
- boost::asio::io_service ios;
- // 增加一个work对象
- boost::asio::io_service::work work(ios);
- PRINT_DEBUG("ios before");
- // 当没有任务时,ios.run()也不会马上返回
- ios.run();
- PRINT_DEBUG("ios end");
- }
- 2013-01-05 22:43:19 334 [4868] DEBUG - ios before
- 2013-01-05 22:43:19 341 [4868] DEBUG - ios end
- 2013-01-05 22:43:48 514 [7852] DEBUG - ios before
没有任务时, 也会阻塞.
- boost库asio详解2——io_service::run函数无任务时退出的问题
- 【Boost】boost库asio详解2——io_service::run函数无任务时退出的问题
- 【Boost】boost库asio详解2——io_service::run函数无任务时退出的问题
- 【Boost】boost库asio详解1——io_service::run函数无任务时退出的问题
- 【boost学习】之boost::asio(5)——io_service::run函数无任务时退出的问题
- 关于asio中的io_service::run函数在没有任务时退出的问题
- 【boost】boost::asio(2)——io_service
- 【Boost】boost库asio详解2——strand与io_service区别
- 【Boost】boost库asio详解1——strand与io_service区别
- 【Boost】boost库asio详解3——io_service作为work pool
- 【Boost】boost库asio详解3——io_service作为work pool
- 【Boost】boost库asio详解3——io_service作为work pool
- 【Boost】boost库asio详解1——strand与io_service区别
- 【Boost】boost库asio详解3——io_service作为work pool
- 【Boost】boost库asio详解3——io_service作为work pool
- 【boost学习】之boost::asio(2)——io_service
- boost库asio详解1——strand与io_service区别
- boost库asio详解3——io_service作为work pool
- 笔试常见题----新建了几个对象??
- boost库asio详解1——strand与io_service区别
- visifire 饼状图加图例
- android 中Dialog对话框及自定义Dialog的方法
- 生成tags
- boost库asio详解2——io_service::run函数无任务时退出的问题
- boost库asio详解3——io_service作为work pool
- boost库asio详解4——deadline_timer使用说明
- uiscrollview和uipagecontrol组合
- HDU 1150 Machine Schedule (匈牙利算法 最小顶点覆盖= 最大匹配数)
- boost库asio详解5——resolver与endpoint使用说明
- ActiveX控件的检测、安装与卸载
- boost库asio详解6——boost::asio::error的用法浅析
- boost库asio详解7——boost::asio::buffer用法