文件名称:sigsuspend函数-cadence入门教程
文件大小:5.91MB
文件格式:PDF
更新时间:2024-07-02 09:20:06
Unix linux 环境 编程
10.16 sigsuspend函数
上面已经说明,更改进程的信号屏蔽字可以阻塞或解除阻塞所选择的信号。使用这种技术
可以保护不希望由信号中断的代码临界区。如果希望对一个信号解除阻塞,然后 p a u s e以等待以
前被阻塞的信号发生,则又将如何呢? 假定信号是S I G I N T,实现这一点的一种不正确的方法是:
如果在解除对S I G I N T的阻塞和p a u s e之间发生了S I G I N T信号,则此信号被丢失。这是早期
的不可靠信号机制的另一个问题。
为了纠正此问题,需要在一个原子操作中实现恢复信号屏蔽字,然后使进程睡眠,这种功
能是由s i g s u s p e n d函数所提供的。
#include