系统相关
首页 > 系统相关> > Linux ---- 定时器setitimer

Linux ---- 定时器setitimer

作者:互联网

在编程的时候,很多时候会用到定时器,定时检测某个状态是否发生变化并进行处理。这时候,就会用到setitimer函数了。

  - 功能:设置定时器(闹钟)。可以替代alarm函数。精度微妙us,可以实现周期性定时

1. 头文件

  #include <sys/time.h>

2. 函数原型

  int setitimer(int which, const struct itimerval *new_value, struct itimerval *old_value);

  参数:

  - which : 定时器以什么时间计时

              ITIMER_REAL: 真实时间,时间到达,发送 SIGALRM  -- 常用               ITIMER_VIRTUAL: 用户时间,时间到达,发送 SIGVTALRM               ITIMER_PROF: 以该进程在用户态和内核态下所消耗的时间来计算,时间到达,发送 SIGPROF信号      - new_value: 设置定时器的属性
1 struct itimerval {                 // 定时器结构体
2     struct timeval it_interval;    // 两次定时任务之间的时间间隔
3     struct timeval it_value;       // 设置定时器后多久开始执行定时任务
4 };
5 
6 struct timeval {            // 时间结构体
7     time_t tv_sec;          //  秒数
8     suseconds_t tv_usec;    //  微秒
9 };
              - old_value :记录上一次的定时的时间参数,一般不使用,指定NULL                 - 返回值:             成功返回0,失败返回 -1 并设置错误号写入errno中。

标签:定时器,struct,setitimer,itimerval,value,----,时间,Linux,定时
来源: https://www.cnblogs.com/happinesspills/p/16426526.html