信號處理是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是程序打印出的進程號