/* ============================================================================ Name : AlarmSignal.c Author : Version : Copyright : Your copyright notice Description : 每3秒执行一个相同的动作。 ============================================================================ */ #include <stdio.h> #include <stdlib.h> #include <signal.h> void sig_alarm(void) { printf("每3s执行一次!\n"); alarm(3); //如果要周期执行,则signal执行的函数中要再设alarm. return ; } int main(void) { alarm(3); //开始必须有此alarm()函数,以启动后面的signal()函数。 while (1) { if ((signal(SIGALRM, sig_alarm)) == SIG_ERR) { perror("signal"); } } return 0; }