#include #include #include #include #include #include // 定时器的使用 alarm 函数的使用 void alarm_handle(int sig) { printf("接收到了 SIGALRM(%d) 信号\n", sig); } int main() { struct itimerval new_value; // 首次触发信号的时间 new_value.it_value.tv_sec = 5; //5秒后发送信号 new_value.it_value.tv_usec = 0; //微秒 // 之后每次触发信号的时间 new_value.it_interval.tv_sec = 1; //每隔1秒发送信号 new_value.it_interval.tv_usec = 0; // 注册信号处理函数 signal(SIGALRM, alarm_handle); //注册信号处理函数 // 信号处理函数的注册方式 setitimer(ITIMER_REAL, &new_value, NULL); //设置定时器 while (1) ; //程序进入死循环,等待信号 return 0; }