#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