sigaction函数捕捉信号

#include <stdio.h>
#include <signal.h>

void do_sig(int num)
{
	printf("I am do_sig\n");
	printf("num = %d\n", num);
}


int main(void)
{
	struct sigaction act;
	act.sa_handle = do_sig;
	//act.sa_handle = SIG_DEF;//默认动作
	//act.sa_handle = SIG_IGN;//忽略
	sigemptyset(&act.sa_mask);//设置BLOCK阻塞信号集为0,为未阻塞
	//sigaddset(&act.sa_mask, SIGQUIT);//屏蔽其他信号屏蔽字,置为1
	act.sa_flags =0;

	sigaction(SIGINT, &act, NULL);

	while(1){
		printf("*******\n");
		sleep(1);
	}
	return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_22753933/article/details/83514252