免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 8224 | 回复: 3
打印 上一主题 下一主题

sigusr1,sigusr2是什么信号? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-10-18 11:14 |只看该作者 |倒序浏览
man 7 signal
发现12是个自定义信号。
kill -12 process

怎么自己定义信号量呢?

论坛徽章:
0
2 [报告]
发表于 2010-10-18 11:37 |只看该作者
sigaction函数  shell不懂 友情帮顶

论坛徽章:
3
2015年迎新春徽章
日期:2015-03-04 09:56:11数据库技术版块每日发帖之星
日期:2016-08-03 06:20:00数据库技术版块每日发帖之星
日期:2016-08-04 06:20:00
3 [报告]
发表于 2010-10-18 14:24 |只看该作者
nblgjc:~ # cat test_SIGUSR1.c
#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
void func(int sig)
{
        static int x=0;
        x++;
        if(x>10) {
                printf("OVER\n");
                exit(0);
        }
        printf("test\n");
}
int main()
{
        struct sigaction sigact;
        sigact.sa_handler = func;
        sigact.sa_flags=0;
        sigemptyset(&sigact.sa_mask);
        sigaction(SIGUSR1,&sigact,NULL);
        while(1) {
                pause();
        }

}
nblgjc:~ # gcc test_SIGUSR1.c -o test_SIGUSR1
nblgjc:~ # ./test_SIGUSR1 &
[1] 5276
nblgjc:~ # for((i=0;i<11;i++));do killall -s SIGUSR1 test_SIGUSR1; sleep 1;done;
test
test
test
test
test
test
test
test
test
test
OVER
[1]+  Done                    ./test_SIGUSR1
nblgjc:~ #

论坛徽章:
3
2015年迎新春徽章
日期:2015-03-04 09:56:11数据库技术版块每日发帖之星
日期:2016-08-03 06:20:00数据库技术版块每日发帖之星
日期:2016-08-04 06:20:00
4 [报告]
发表于 2010-10-18 14:30 |只看该作者
让shell支持SIGUSR1作为一种IPC方式的话,可以使用trap
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP