Linux ---- 定时器setitimer

2022/7/1 5:19:41

本文主要是介绍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中。

这篇关于Linux ---- 定时器setitimer的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程