Linux_信号

信号

也叫软中断。

通知进程发生了某个事件。

signal

image-20211030101557246

signal第一个参数,信号代号。第二个参数,信号处理函数入口地址。

默认:SIG_DFL;忽略:SIG_IGN。

1
2
//默认:SIG_DFL;忽略:SIG_IGN。
(void (*)0)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
//以下程序把原有的SIGINT信号处理方式改为了我们自定义的函数。
void sig_fun(int sig)
{
printf("sig=%d\n",sig);
}
int main()
{
signal(SIGINT, sig_fun);//只是做了一个约定。没有去调用sig_fun函数。等到信号出现才去调用。
while(1)
{
printf("hello\n");
sleep(1);
}
}