信號處理是linux程序的一個特色。用信號處理來模擬操作系統的中斷功能。要想使用信號處理功能,你要做的就是填寫一個信號處理函數即可。
#include <stdio.h>
#include <sys/types.h>
#include <stdlib.h>
#include <signal.h>
int flag = 1;
void func(int sig)
{
printf("I get a signal!\n");
flag = 0;
}
int main()
{
signal(SIGINT, func);
printf("pid:%ld\n",(long)getpid());
while(flag)
pause();
return 0;
}
執行,
#gcc sig.c -o sig #./sig 在另一終端: #kill -INT 333//333是程序打印出的進程號