#include <stdio.h>
#include <time.h>
#include <sys/time.h>
#include <stdlib.h>
#include <signal.h>
static int count = 0;
static struct itimerval oldtv;
void set_timer()
{
struct itimerval itv;
itv.it_interval.tv_sec = 3; // 秒
itv.it_interval.tv_usec = 0; // 微秒
itv.it_value.tv_sec = 1;
itv.it_value.tv_usec = 0;
setitimer(ITIMER_REAL, &itv, &oldtv);
}
void signal_handler(int m)
{
count ++;
printf("alarm handler : %d\n", count);
}
int main()
{
signal(SIGALRM, signal_handler);
set_timer();
while(count < 10)
{
printf("main loop!\n");
sleep(1);
}
exit(0);
}
0 件のコメント:
コメントを投稿