登记信号集
来源:互联网 发布:扬尘检测仪规定数据 编辑:程序博客网 时间:2024/04/28 21:35
sigaction.c
#include <sys/types.h>
#include <unistd.h>
#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
void my_func(int signum)
{
printf("if you want to quit,please try SIGOUIT\n");
}
int main()
{
sigset_t set, pendset;
struct sigaction action1,action2;
if (sigemptyset(&set)<0)
perror("sigemptyse");
if (sigaddset(&set, SIGQUIT)<0)
perror("sigaddset");
if (sigaddset(&set, SIGINT)<0)
perror("sigaddset");
if (sigprocmask(SIG_BLOCK, &set, NULL)<0)
perror("sigprocmask");
else
{
printf("blocked\n");
sleep(5);
}
if (sigprocmask(SIG_UNBLOCK, &set, NULL)<0)
perror("sigprocmask");
else
printf("unblock");
while(1)
{
if (sigismember(&set, SIGINT))
{
sigemptyset(&action1.sa_mask);
action1.sa_handler = my_func;
sigaction(SIGINT, &action1, NULL);
}
else if (sigismember(&set, SIGQUIT))
{
sigemptyset(&action2.sa_mask);
action2.sa_handler = SIG_DFL;
sigaction(SIGTERM, &action2, NULL);
}
}
return 0;
}
gcc sigaction.c -o sigaction -g
./sigaction
- 登记信号集
- 信号、信号集、信号掩码、信号处理
- linux 信号 信号集
- 进出登记
- 资产登记
- 信号集
- 信号集
- 信号集与屏蔽信号
- 10.11 信号_信号集
- Linux 信号和信号集
- Linux 信号和信号集
- 信号集与阻塞信号
- 软件著作权登记,版权登记,软件著作权
- 设置信号集和信号屏蔽字
- 信号理论: 信号集及其映射
- 信号signal()、alarm()、信号集函数、sigprocmask()
- 信号signal()、alarm()、信号集函数、sigprocmask()
- 信号集和信号屏蔽函数
- SQL Server 连接字符串和身份验证 学习
- 信号实现等待另一个进程
- SSH原理与运用(1)
- C语言笔试题(12)——猴子吃桃问题
- POJ 1157 LITTLE SHOP OF FLOWERS(动态规划)
- 登记信号集
- ls命令的实现
- hdu1870 愚人节的礼物
- Firefox OS 架构简析(1)
- android Widget开发深悉
- hdu1520
- 安装OS X Mountain Lion后svn命令不能使用的解决方法
- [Chrome源码阅读] Browser相关的类
- 调用 fork 两次避免僵尸进程