APUE學習筆記-捕捉信號的簡單程序,pause

#include "myapue.h"

static void sig_usr(int signo);

int main(void)
{
	if(signal(SIGUSR1, sig_usr) == SIG_ERR)
		err_sys("can't catch SIGUSR1");
	if(signal(SIGUSR2, sig_usr) == SIG_ERR)
		err_sys("can't catch SIGUSR2");
	for(;;)
		pause();
}

static void sig_usr(int signo)
{
	if(signo == SIGUSR1)
		printf("received SIGUSR1\n");
	else if(signo == SIGUSR2)
		printf("received SIGUSR2\n");
	else 
		err_dump("received signal %d\n", signo);
}

<257>函數

(1)spa

pause函數:使調用進程掛起直至捕捉到一個信號,只有執行了信號處理程序並從其返回時,pause才返回。code

相關文章
相關標籤/搜索