免费注册 查看新帖 |

Chinaunix

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

[函数] signal函数可放在程序的任何位置么? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2003-04-16 15:09 |只看该作者 |倒序浏览
signal函数可以放在程序的任何位置么?
我想是跟放置的位置有关的吧,不知道对不对。
假如有如下程序:
     int main()
        {
                for(i=1,1000000,i++){....};
                signal(SIGUSR1,sig_usr);
                .......
         }
那么,如果在程序执行循环的过程中产生了SIGUSR1信号,能成功的捕捉到么?
望高手指导,不胜感激!

论坛徽章:
0
2 [报告]
发表于 2003-04-16 15:11 |只看该作者

signal函数可放在程序的任何位置么?

放到开始,for外面

论坛徽章:
0
3 [报告]
发表于 2003-04-16 15:23 |只看该作者

signal函数可放在程序的任何位置么?

我看一般程序都是放在程序的开始位置,不知道这是约定俗成还是有讲究的。
将signal放在for的前面,肯定能工作,但是如果一定要放在后面,会对程序的运行有影响么?

论坛徽章:
0
4 [报告]
发表于 2003-04-16 15:24 |只看该作者

signal函数可放在程序的任何位置么?

比较恶心的一点是,放在fork之前,会被子进程继承

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
5 [报告]
发表于 2003-04-16 15:40 |只看该作者

signal函数可放在程序的任何位置么?

程序最终是一系列的指令,信号处理处理程序的设置与位置当然有关系了。只有当这个信号处理的指令被执行了,才能起到作用。
起作用的位置从调用signal函数返回处开始。

论坛徽章:
0
6 [报告]
发表于 2003-04-16 15:48 |只看该作者

signal函数可放在程序的任何位置么?

谢谢你们!非常感谢!
哇!蓝色键盘,你回答问题好快:)

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
7 [报告]
发表于 2003-04-16 16:00 |只看该作者

signal函数可放在程序的任何位置么?

下午没什么事情,刚进来就赶上了你的问题。呵呵
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP