sigtest1.c

来自「关于IPC通信的小程序代码!」· C语言 代码 · 共 68 行

C
68
字号
///////////////////////////////////////////////////////////////ModuleName:	semtest.c//Author:	delaybbc//WrittenTime:	2004/3/5//Functions:	This module test use of signal and//		timer in Linux/Unix IPC//Reference:	/////////////////////////////////////////////////////////////////////////////////////////header///////////////////////////#include <unistd.h>#include "/home/delaybbc/inc/m_ipc.h"#include "/home/delaybbc/inc/m_networks.h"//////////////////////constant defination////////////////////////////////////////////global variant///////////////////////char msg[20];////////////////////////////body/////////////////////////////void handle_ctrl_c(int signo){	printf("ctrl+c\n");	exit(0);}void handle_alarm(int signo){	printf(msg);	alarm(2);}main(){		struct sigaction act;	pid_t child_id;		act.sa_handler=handle_ctrl_c;	sigemptyset(&act.sa_mask);	sigaddset(&act.sa_mask,SIGTERM);	sigaction(SIGINT,&act,NULL);	act.sa_handler=handle_alarm;	sigemptyset(&act.sa_mask);	sigaddset(&act.sa_mask,SIGALRM);	sigaction(SIGALRM,&act,NULL);	if((child_id=fork())==0)	{		sprintf(msg,"I`m child process\n");		sleep(1);		alarm(2);		while(1);	}	else	{			sprintf(msg,"I`m father process\n");		alarm(2);		while(1);	}}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?