在将来调用功能
发布时间:2020-12-16 07:03:45 所属栏目:百科 来源:网络整理
导读:在Posix( Linux)环境中长期运行的服务器程序(内置于C)中:在将来的某个特定时间执行函数的最佳方法是什么?它不需要在任何特定线程中执行,但执行时间的准确性需要几毫秒.一般方法或特定代码表示赞赏. 解决方法 GNU C库(sys / timex.h)中有一些高分辨率的时钟
在Posix(
Linux)环境中长期运行的服务器程序(内置于C)中:在将来的某个特定时间执行函数的最佳方法是什么?它不需要在任何特定线程中执行,但执行时间的准确性需要几毫秒.一般方法或特定代码表示赞赏.
解决方法
GNU C库(sys / timex.h)中有一些高分辨率的时钟函数,所以尽管它们不是POSIX,但它们将是Linux的便携式.
High Accuracy Clock — The GNU C Library 这些函数以’ntp’为前缀,尽管它们不需要或使用任何ntp服务,因此这种关系纯粹是肤浅的. 请注意,虽然粒度是以微秒为单位,但Linux内核的用户空间延迟为10毫秒,所以不要打扰或期望任何更准确的事情. 一旦你有了当前的高分辨率时间,你就可以计算一个持续时间并使用(posix)nanosleep(但是再次,舍入到10ms)来设置延迟.还有一个可能感兴趣的clock_nanosleep. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
- 自定义函数改表关联优化一例
- ORA-38706: Cannot turn on FLASHBACK DATABASE
- c# – 怀疑如何组织我的课程
- Oracle 增加修改删除字段与添加注释
- ajax – 我不明白在servlets 3.0 API的Async支持
- c# – System.Timers.Timer在Console App中使用带
- 为什么大写的属性名称没有在Objective-C / UITou
- flex AdvancedDataGrid 多表头 flex 教程 flex培
- 如何查询某些行的sqlite,即将其划分为页面(perl
- C#LINQ过滤器IEnumerable并表示为IEnumerable
热点阅读