函数原型:
typedef void (*sighandler_t)(int signum); //函数指针,该调用函数处理信号传递的参数是信号的类型
sighandler_t signal(int signum, sighandler_t handler);
作用:
singnal是一个信号捕捉函数。
参数解析:
第一个参数必须是信号类型
第二个是自己定义的函数但是类型必须要和指针匹配,但是在这个过程中他是不可以捕捉9号信号,9号信号不可以被捕捉,如果想要处理一个信号就必须使用一次signal去捕捉,捕捉之后通常有三种默认动作:
三种默认动作
1 忽略 假装没听见
2 执行自己想做的事情 ,这时候就需要使用到自己定义的函数,相当于回调自己的函数。感觉这就是这个函数最有意思的地方。
3 执行系统的默认动作,同城系统的默认动作是结束该进程
个人觉得这个信号处理的背后好像可以做很多的事情,一般对于对信号没什么了解的人的话,要结束一个这样流氓的进程还真的有点困难。所以以前的那些流氓广告是这么干的吗?