加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – 确定哪个信号导致EINTR?

发布时间:2020-12-16 07:06:32 所属栏目:百科 来源:网络整理
导读:我正在运行epoll循环,有时我对epoll_wait的调用返回-1,并将errno设置为EINTR.有时候,我想让它结束epoll循环,就像SIGTERM或SIGINT一样.但是我用-pg标志编译了这个代码,因此会产生周期性的SIGPROF(27)信号,从而阻止我的循环. 所以…是否可以打开signum以便我可
我正在运行epoll循环,有时我对epoll_wait的调用返回-1,并将errno设置为EINTR.有时候,我想让它结束epoll循环,就像SIGTERM或SIGINT一样.但是我用-pg标志编译了这个代码,因此会产生周期性的SIGPROF(27)信号,从而阻止我的循环.

所以…是否可以打开signum以便我可以确定何时退出而不是继续?我想避免使用全局跟踪最近发出的信号的任何事情.

解决方法

在SIGTERM和SIGINT上添加信号处理程序.在这些处理程序中,您可以设置一个在主epoll循环中检查的变量

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读