Chinaunix
标题:
boost asio io_service 队列超长耗尽资源的问题
[打印本页]
作者:
wlmqgzm
时间:
2016-05-03 12:15
标题:
boost asio io_service 队列超长耗尽资源的问题
发现一个问题, boost asio io_service队列超长耗尽资源的问题. 原来这个队列是没有上限的, 这算不算一个bug呢???
我今天为了测试一下代码, 将debug整体打开, 其中显示模块是一个单线程io_service单独驱动的, 由于显示执行是很慢的, 其他线程不断的post过来需要显示的内容,
然后显示模块io_service的队列越来越长, 不管它, 过10分钟, 队列将 系统内存资源已经消耗光了, 进程自动退出
作者:
wlmqgzm
时间:
2016-05-03 12:23
当然解决办法也有, 很简单, 就是自己设计一个有容量上限的显示string队列, 然后改代码, 从显示string队列中读, 不用io_service, 就是很意外, io_service为了追求效率, 队列尽然没有长度上限检查.
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2