美文网首页
利用信号 Signal 实现定时器

利用信号 Signal 实现定时器

作者: wjundong | 来源:发表于2019-12-23 10:07 被阅读0次
#include <stdio.h>
#include <time.h>
#include <sys/time.h>
#include <stdlib.h>
#include <signal.h>
#include <unistd.h>


int count = 0;

void setTimer()
{
    struct itimerval itv, oldtv;
    // 定时器初值
    itv.it_value.tv_sec = 5;
    itv.it_value.tv_usec = 0;
    // 定时器重装值
    itv.it_interval.tv_sec = 1;
    itv.it_interval.tv_usec = 0;
    setitimer(ITIMER_REAL, &itv, &oldtv);
}

 
void sigalrmHandler(int sig)
{
    count++;
    printf("timer signal.. %d\n", count);
}


int main()
{
    signal(SIGALRM, sigalrmHandler);
    setTimer();

    while (count < 1000) {
        sleep(100);
    }

    return 0;
}

相关文章

网友评论

      本文标题:利用信号 Signal 实现定时器

      本文链接:https://www.haomeiwen.com/subject/hjfznctx.html