实际上,我确实弄清楚了如何为 SIGRTMAX 和 SIGRTMIN 生成信号。
如果将来有人遇到这种情况,那么-
首先使用struct sigaction,根据您的要求设置成员。将sa_handler设置为您想要处理信号生成的函数。
要将此付诸行动,您可以使用函数sigaction()传递 linux 手册中指定的参数。
因此,现在您使用struct sigevent设置其中的成员来指定要处理的信号编号以及您如何为其发送通知。
至此,您已完成设置,现在您需要创建一个现象或事件,以生成可能像时间到期这样的信号。
您可以通过create_timer()获取计时器处理程序来完成此操作,这会将您的 sigevent 与处理程序相关联。
然后使用struct itmerspec设置过期间隔,然后使用timer_settime()将过期时间与处理程序相关联。
所以现在到期与处理程序相关联,时间处理程序与 sigevent 相关联,sigevent 将该信号重定向到由 sigaction 设置的处理程序
归档时间: |
|
查看次数: |
9616 次 |
最近记录: |