LINUX存在信号呢个概念,当我地触发咩事件果时就内核就会发出一个信号.
具体有咩信号就自己睇书啦
我地可以阻塞某一D既信号. 将阻塞既信号可以保存系信号集里面.
我地可以对信号集查下睇下我地有咩信号阻塞.
#include
#include
#include
void err_quit(char *);
int main(void)
{
sigset_t newset;
if((sigemptyset(&newset))<0) 我地呢度系先清空信号集 ,呢个系首先要做架啦
err_quit("sigemptyset");
if((sigaddset(&newset,SIGCHLD))<0)
添加一个信号.SIGCHLD(子进程挂起或已死)
err_quit("sigaddset");
if(sigismember(&newset,SIGCHLD))
好啦好啦.我地而家呢度就系检查睇下有无SIGCHLD呢个信号了.
puts("SIGCHLD is in signal mask");
else
puts("SIGCHLD not in signal mask");
if(sigismember(&newset,SIGTERM))
睇下信号集里面有无终止进程信号
吾使睇都知道无呢个信号啦.因为我地都无加到入去啊.
puts("SIGTERM in signal mask");
else
puts("SIGTERM not in signal mask");
exit(EXIT_SUCCESS);
}
void err_quit(char *msg) 呢度就系错误处理啦
{
perror(msg);
exit(EXIT_FAILURE);
}
阅读(1739) | 评论(0) | 转发(0) |