有没有办法确定如何传递信号,等待给定的进程ID?

时间:2012-01-27 11:53:59

标签: c linux pthreads signals

鉴于进程ID,我想知道如何传递和处理信号{包括实时信号}。有没有办法从/ proc文件系统中获取?如果是这样,该怎么做?请指导。

1 个答案:

答案 0 :(得分:1)

引用“未决信号”:

可以使用sigpending()来获取给定进程待处理的一组信号类型。这不是已发送到流程的实际信号数。

参考“传递的信号”:

可以使用sigaction()设置信号处理程序,而sigwaitinfo()可以计算它的调用频率。无论如何,内核或运行时库(我不确定哪个)可能决定只调用一次处理程序,以便及时发送一个或多个相同类型的信号。

收集信号的另一种方法是使用{{1}},可能是在专用线程中。