有没有办法在纯 C/C++ 中编写一个计时器,只使用 pthreads 既不是 boost 也不是 Qt。我希望操作系统只运行相关线程中的函数(例如 MyThreadClass.myfunction())。我不想检查每个线程中的信号(必须有一种类型的线程检查时间)。计时器线程必须在该时间尽快运行(通过中断其他进程和线程),并且能够计算在它不运行时经过的时间。并且它不能使用 while(true) 之类的循环,我不想让 CPU 忙。
例如,我将线程设置为在 100 毫秒内运行。它进入背景并检查时间。它应该频繁但短暂地运行。在 100 毫秒时,它将中断线程并运行特定功能。