2016 - 2024

感恩一路有你

sa_sigaction signal和sigaction的区别?

浏览量:2226 时间:2021-03-18 05:38:52 作者:admin

signal和sigaction的区别?

以下信号指的是旧的信号功能。现在大多数系统用sigaction

1重新实现信号函数。Signal在调用处理程序之前还原信号的处理程序指针;在调用sigaction之后,在再次调用sigaction修改处理程序指针之前,不会还原处理程序指针。

这样,(1)信号会丢失信号,不能处理重复的信号,但信号动作可以。因为signal在获取信号和调用处理程序之间有时间恢复处理程序,所以当它再次接收到信号时,它将执行默认的处理程序。(虽然有些调用在处理程序的开头重新设置了处理程序,但只能降低信号丢失的概率,但不能保证所有信号都能正确处理)。信号在调用过程中不支持信号阻塞,在信号动作调用后,在处理程序调用前,会在信号中加入屏蔽信号(默认情况下包括自动传输的信号),在调用ndler后,信号会自动恢复到原来的值。

(2)信号处理不能提供阻断某些信号的功能。信号操作可以阻止指定的信号和自己处理的信号,直到处理程序处理结束。通过这种方式,可以阻止自己处理的信号,并且在处理程序结束时可以再次接受重复的信号。

sa_sigaction sigaction函数作为中断 sigaction用法

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。