对于如何定期(比如每 100 毫秒)唤醒 C++ 11 线程的一些指示,我将不胜感激。平台是 Linux 和语言 C++。我遇到了这个解决方案:
但是他们在那里调用一个回调函数,然后在定时器间隔内休眠。这意味着实际周期是函数执行时间+间隔。我想以恒定的时间间隔调用回调,而不管它的执行时间。
我想知道 Boost 是否有帮助?但我不想使用它,因为这个项目不是多平台的,我想尽量减少对第三方库的使用。
也许将 POSIX 计时器与 C++ 线程结合是一种前进的方式?我不确定这到底是如何工作的。
任何有关如何开始的建议将不胜感激。
原文由 DavidA 发布,翻译遵循 CC BY-SA 4.0 许可协议
这是一篇关于这个主题的好文章:使用标准 C++11 设施进行定期处理 https://bulldozer00.com/2013/12/27/periodic-processing-with-standard-c11-facilities/