直接看代碼
#include <stdio.h>#include <signal.h>typedef void (*signal_handler)(int); //定義函數指針void heart_handler_fun(int signal_num){ alarm(30);//睡眠30S PRintf("catch signal %d/n", signal_num);}int main(){ printf("start signal/n"); signal_handler p_signal = heart_handler_fun; signal(SIGALRM, p_signal); alarm(30);//睡眠30S,觸發signal SIGALRM while(1);//一定要循環,要不然主線程退出,整個程序就退出了 return 0;}
新聞熱點
疑難解答