社区
Linux/Unix社区
帖子详情
poll和select引发的血案
task_struct
2017-12-22 10:30:02
最近写一个串口通信程序,在一端程序中打开串口并poll,如果在另一端cat然后ctrl+c中断又或者echo数据。那么这端poll返回的revents中一直会有POLLHUP事件,这样就会导致cpu占用率过高。换用select函数也是一样的结果。不知道有没有人遇到过,可否提供解决方案?
...全文
318
2
打赏
收藏
poll和select引发的血案
最近写一个串口通信程序,在一端程序中打开串口并poll,如果在另一端cat然后ctrl+c中断又或者echo数据。那么这端poll返回的revents中一直会有POLLHUP事件,这样就会导致cpu占用率过高。换用select函数也是一样的结果。不知道有没有人遇到过,可否提供解决方案?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
heronism
2017-12-26
打赏
举报
回复
能否给出代码详述一下问题及解决办法,让大家都学一下
task_struct
2017-12-24
打赏
举报
回复
可以多打开一个描述符来解决。
Linux下
select
调用
引发
的
血案
Select
函数使用简单,其工作原理大家通常也知道,但是在实际的使用过程中可能并没有严格遵守,而且确实也比较难以完全遵守,除非不使用它。
Select
采用一个bit表,每个fd对应表中的一个bit位,宏FD_SETSIZE为表的...
一个由session.close()
引发
的
血案
一个由session.close()
引发
的
血案
netty客户端
引发
的线程
血案
(二)
netty客户端
引发
的线程
血案
(二) 前言 前文讲解了基于netty-client 3.10.5如何出现的线程雪崩,在分析该问题的过程中,我们切换了es-client调用的netty库,尝试使用了netty的一些老的版本,发现,在3.2.4版本上面...
【java】一个由session.close()
引发
的
血案
就再也没有在5分钟之内return
poll
了。 开始怀疑是 慢sql 导致的。但是日志可以看出整个查询也就消耗了4ms next 跟踪代码吧。 SqlSession session = sqlSessionFactory.openSession(true); .... catch (Exception e...
由一个自动部署脚本
引发
的
血案
。。。This is very likely to create a memory leak
经常早上来了看到Tomcat挂掉了,和这一堆异常日志。开始的时候我怀疑是哪里创建了好多线程但都没关闭导致的,可是又没发现哪里有这样的操作。直到发现了这篇神作: http://ifeve.com/why-kill-2-cannot-stop-tomcat/...
Linux/Unix社区
23,121
社区成员
74,508
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章