以下是信号手册页
signal()的行为因UNIX版本而异,而且在不同版本的Linux中也有不同的历史变化。避免使用它:使用sigac- tion(2)代替。见下面的可携性。
这是否意味着我们应该始终使用sigaction
调用而不是使用signal
?
发布于 2020-12-13 15:56:46
是。您已经确定了Linux引用和POSIX也是这么说的
函数取代信号()函数,应该优先使用它。
sigaction通过强制用户做出有关syscall中断(SA_RESTART)、处理程序中断(sa_mask
,SA_NODEFER)、子处理(SA_NOCLDWAIT|STOP)、处置持久性(SA_RESETHAND)等方面的决策来解决信号中的历史不一致问题。
https://stackoverflow.com/questions/65274578
复制相似问题