发送信号和pselect?

时间:2014-01-15 11:52:21

标签: c linux sockets signals

逻辑

while()
{

  block signal;

  pselect();

  unblock signal;

}

当信号被阻止时,我可以存储发送信号的进程ID吗?所以我在pselect完成它的工作并且信号被解锁后处理它们?

如果有更好的方法实现这一点,请有人指导我。

1 个答案:

答案 0 :(得分:1)

阻塞的信号在解除阻塞后排队并传送。

如果标准信号(即没有实时信号)在被阻止时被传送到进程每个标准信号只有一个实例排队

有关详细信息,请参阅man 7 signal


如果使用sigaction()设置了信号处理程序,并且传入的sa_flags成员struct sigaction设置为SA_SIGINFO,则可以导出发送信号的进程ID }。

详情请see man sigaction