移植 VC++ SetWaitableTimer 为 gcc
我有使用 SetWaitableTimer 在午夜后 10 秒执行某些任务。
SetWaitableTimer
有以下功能,代码中使用了:
如果调整系统时间, 任何未清绝对款项的到期时间 计时器已调整。
我正在将代码移植到 gcc/Linux。我如何模拟上述行为?
I've legacy code that uses SetWaitableTimer to perform some task at 10 sec after midnight.
SetWaitableTimer
has the following feature, which is used in the code:
If the system time is adjusted, the
due time of any outstanding absolute
timers is adjusted.
I'm porting code to gcc/Linux. How I can simulate the above behaviour?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是对 Linux 定时器功能的很好的概述。您需要
timer_create()
/timer_delete()
系列包含CLOCK_REALTIME
,然后timer_settime()
与TIMER_ABSTIME
。根据此常见问题解答,如果系统时钟发生变化,则应该进行调整,尽管我从未这样做过测试了一下。This is a pretty good overview of linux timer functions. You want the
timer_create()
/timer_delete()
family withCLOCK_REALTIME
, thentimer_settime()
withTIMER_ABSTIME
. According to this FAQ it should be adjusted if there is a change to the system clock though I have never tested it.