【Boost】boost库asio详解2——io_service::run函数无任务时退出的问题
2024-09-02 12:04:22
io_service::work类可以使io_service::run函数在没有任务的时候仍然不返回,直至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");
- }
test_asio_nowork()执行结果:
- 2013-01-05 22:43:19 334 [4868] DEBUG - ios before
- 2013-01-05 22:43:19 341 [4868] DEBUG - ios end
test_asio_work()的执行结果:
- 2013-01-05 22:43:48 514 [7852] DEBUG - ios before
没有任务时, 也会阻塞.
最新文章
- MongoDB 效率
- Android 强烈推荐:程序员接私活那点事
- 优化Google字体 全面加速WordPress
- SoapUI调用webservice实现的两种方式
- 浅谈SEO翻倍提升网站流量
- CSS样式“display:none”与“visibility:hidden”区别
- css页面点击文字出现蓝色底色去掉方法
- Windows 7 中设置VPN(PPTP连接方式)
- Apache配置文件httpd.conf内容翻译
- 关于mysql的基础知识
- 数据结构之平衡二叉树(AVL)
- C# login with cookie and fiddler2
- linux下查找文件和文件内容
- sort函数简单调用方法
- [Android] Upload package to device fails #2720
- hadoop伪分布式环境搭建
- Supervised Learning and Unsupervised Learning
- UNIX网络编程——分析一帧基于UDP的TFTP协议帧
- [摘录] 图灵机与lambda演算的关系
- Openlayer3之瓦片数据接入
热门文章
- vdWebControl.js去水印
- 数据库 ";";和null的在java 持久化中的区别
- 邻接表的使用及和vector的比較
- C语言-回溯例2
- UUID随机字符串
- Android中Environment与StatFs获取系统/SDCard存储空间大小
- mysql 数据类型+约束+关联
- Logistic Regression 笔记与理解
- iOS移动开发周报-第17期
- undefined reference to libiconv_open ext/iconv/.libs/iconv.o by install phpsource