信号处理是linux程序的一个特色。用信号处理来模拟操作系统的中断功能。要想使用信号处理功能,你要做的就是填写一个信号处理函数即可。
来源:http://blog.csdn.net/muge0913/article/details/7317621
#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是程序打印出的进程号