ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Linux ---- 定时器setitimer

2022-06-30 13:35:01  阅读:132  来源: 互联网

标签:定时器 struct setitimer itimerval value ---- 时间 Linux 定时


在编程的时候,很多时候会用到定时器,定时检测某个状态是否发生变化并进行处理。这时候,就会用到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

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有