关于signal()函数问题
假设一个场景:function //do something about i/o
int main()
{
signal( SIGHUP,function);
kill(getpid, SIGHUP);
... //dosomething aboutI/O
exit();
}
信号处理程序之间涉及到的资源同步 共享问题要自己来处理对么
要自己处理??
因为信号注册的 处理函数 和程序下文 都有处理同一个I/O
是的,所以信号处理函数要做到:异步信号安全,而处理同一个I/O这种明显就不是异步信号安全的做法。 回复 2# demilich
我也是才读到apue第十章产生了以上的疑惑,不过读完了第十章也对这部分内容有了进一步的了解
关键是内核对未决信号控制(这里涉及到的就是信号的可靠性,如果单纯用signal+sigpromask+sigspending),操作上来说难度会大于signalaction.
signalaction对开发来说会提供大大的便利对吗
页:
[1]