Chinaunix首页 | 论坛 | 博客
  • 博客访问: 49636
  • 博文数量: 5
  • 博客积分: 1421
  • 博客等级: 上尉
  • 技术积分: 78
  • 用 户 组: 普通用户
  • 注册时间: 2010-01-13 00:12
文章分类

全部博文(5)

文章存档

2010年(5)

我的朋友

发布时间:2010-04-29 10:24:32

......【阅读全文】

阅读(2469) | 评论(1) | 转发(0)

发布时间:2010-04-28 17:50:17

......【阅读全文】

阅读(3674) | 评论(0) | 转发(0)

发布时间:2010-02-03 10:04:33

......【阅读全文】

阅读(1421) | 评论(0) | 转发(0)

发布时间:2010-02-02 15:37:53

......【阅读全文】

阅读(16400) | 评论(0) | 转发(2)

发布时间:2010-01-19 13:31:40

......【阅读全文】

阅读(2239) | 评论(0) | 转发(0)
给主人留下些什么吧!~~

chinaunix网友2010-10-22 16:02

学习了你的,关于不能handle 的问题,我注释了一行code就可以了,你把信号集都block了,那么里面的INT当然就没有出来了哈~~ 慢慢学习你的,我的邮箱,大家互相学习哈mrbone9@gmail.com #include #include #include sigjmp_buf sigBuf; void FunB() { printf("Enter FunB!\n"); printf("Exit FunB!\n"); } void FunA() { printf("Enter FunA!\n"); call(); printf("Exit FunA!\n"); } int main(int argc,char *argv[]) { int iRet = 0; struct sigaction act; sigset_t stSig; sigemptyset(&stSig); sigaddset(&stSig, SIGINT); //sigprocmask(SIG_BLOCK, &stSig, NULL); act.sa_handler = FunB; act.sa_flags = SA_INTERRUPT; sigemptyset(&act.sa_mask); if (sigaction(SIGINT,&act,NULL) != 0) { perror("sigaction"); } iRet = sigsetjmp(sigBuf,1); if (0 == iRet) { kill(getpid(),SIGINT); FunA(); } else if (iRet != 0) { printf("program close!\n"); } return 0; }

回复 |  删除 |  举报
留言热议
请登录后留言。

登录 注册