码迷,mamicode.com
首页 > 编程语言 > 详细

Linux C语言的定时器使用方法

时间:2017-07-14 16:31:32      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:time

编写一个程序(库),实现定时器(计时器)的功能,它能为用户提供在同一进程中多次使用的定时器。这里要求用信号来实现。

示例代码如下:
#include <stdio.h>  
#include <time.h>  
#include <sys/time.h>  
#include <stdlib.h>  
#include <signal.h>  
      
static int time_count = 0;  
static struct itimerval oldtv;  

void set_timer()  
{  
    struct itimerval itv;  
    itv.it_interval.tv_sec = 1;  
    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)  
{  
    time_count ++;  
    printf("%d\n", time_count);  
}  

int main()  
{  
    signal(SIGALRM, signal_handler);  
    set_timer();  
    while(1){
        if(time_count==5)
        {
            printf("time_count = 5\n");
            time_count=0;
        }
   
    }
    return 1;  
}

本文出自 “帆布鞋也能走猫步” 博客,请务必保留此出处http://9409270.blog.51cto.com/9399270/1947529

Linux C语言的定时器使用方法

标签:time

原文地址:http://9409270.blog.51cto.com/9399270/1947529

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!