Linux 进程间通信-信号通信实例
陈志峰
(苏州经贸职业技术学院)
摘 要:本文介绍了信号量通信实例程序。
关键词:进程,通信,实例
信号通信实例程序:
1、捕捉信号SIGINT、SIGQUIT,执行自定义的函数程序实例:
#include<signal.h>
#include<stdio.h>
#include<stdlib.h>
void my_func(int sign_no)
{
if(sign_no==SIGINT)
printf("I have get SIGINT");
else if(sign_no==SIGQUIT)
printf("I have get SIGQUIT");
}
int main()
{
printf("Waiting for signal SIGINT or SIGQUIT");
signal(SIGINT,my_func);
signal(SIGQUIT,my_func);
pause();
exit(0);
}
2、忽略终端Ctrl+C键产生的信号:
#include<stdio.h>
#include<signal.h>
#include<stdlib.h>
int main()
{
signal(SIGINT,SIG_IGN);
while(1)
sleep(1);
return 0;
}
1 / 3