请教如下代码
时间:2011-09-20
来源:互联网
int initLinux()
{
signal(SIGPIPE, SIG_IGN);
signal(SIGQUIT, Killer);
signal(SIGHUP, Killer);
signal(SIGINT, Killer);
signal(SIGTERM, Killer);
return 1;
}
一直对signal函数不是很理解,请解释一下上面的代码呗,多谢了。
{
signal(SIGPIPE, SIG_IGN);
signal(SIGQUIT, Killer);
signal(SIGHUP, Killer);
signal(SIGINT, Killer);
signal(SIGTERM, Killer);
return 1;
}
一直对signal函数不是很理解,请解释一下上面的代码呗,多谢了。
作者: ruifengzhangyi99 发布时间: 2011-09-20
这些是所谓的“注册信号”、“安装信号”的函数(不知是不是这些名词)。
说通俗一些,就是当有一个信号产生时调用对应的处理函数。
对于楼主的程序,就是当产生SIGQUIT、SIGINT这些信号时,调用Killer函数。
SIGINT是你按Ctrl+C产生的,其它的没试过。
说通俗一些,就是当有一个信号产生时调用对应的处理函数。
对于楼主的程序,就是当产生SIGQUIT、SIGINT这些信号时,调用Killer函数。
SIGINT是你按Ctrl+C产生的,其它的没试过。
作者: subfate 发布时间: 2011-09-20
引用 1 楼 subfate 的回复:
这些是所谓的“注册信号”、“安装信号”的函数(不知是不是这些名词)。
说通俗一些,就是当有一个信号产生时调用对应的处理函数。
对于楼主的程序,就是当产生SIGQUIT、SIGINT这些信号时,调用Killer函数。
SIGINT是你按Ctrl+C产生的,其它的没试过。
这些是所谓的“注册信号”、“安装信号”的函数(不知是不是这些名词)。
说通俗一些,就是当有一个信号产生时调用对应的处理函数。
对于楼主的程序,就是当产生SIGQUIT、SIGINT这些信号时,调用Killer函数。
SIGINT是你按Ctrl+C产生的,其它的没试过。
正解
作者: lgxwqq111 发布时间: 2011-09-20
第一个signal(SIGPIPE, SIG_IGN);是说忽略掉pipe产生的信号。
作者: zjf30366 发布时间: 2011-09-20
剩下的是说遇到其余四种信号时调用killer函数。
作者: zjf30366 发布时间: 2011-09-20
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28