如何定期唤醒 C 11 线程?

新手上路,请多包涵

对于如何定期(比如每 100 毫秒)唤醒 C++ 11 线程的一些指示,我将不胜感激。平台是 Linux 和语言 C++。我遇到了这个解决方案:

C++ 11:定期调用 C++ 函数

但是他们在那里调用一个回调函数,然后在定时器间隔内休眠。这意味着实际周期是函数执行时间+间隔。我想以恒定的时间间隔调用回调,而不管它的执行时间。

我想知道 Boost 是否有帮助?但我不想使用它,因为这个项目不是多平台的,我想尽量减少对第三方库的使用。

也许将 POSIX 计时器与 C++ 线程结合是一种前进的方式?我不确定这到底是如何工作的。

任何有关如何开始的建议将不胜感激。

原文由 DavidA 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 314
2 个回答
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题