我需要找到一种在精确的毫秒周期内触发 C++ 函数执行的方法。
我需要每 40 毫秒或更短的时间播放一个循环并运行一个函数。但为了简单起见,让我们保持 40 毫秒。我试图放置一个 Sleep(40) 但该方法不是在确切的时间点触发的。
我只是想知道是否有另一种同步操作的方法,然后在无限循环中使用 Sleep()。
我什至尝试以最大速度播放循环(CPU 达到 20%)并测量系统时间差。然后在 40 毫秒后触发动作。
在这两种情况下,我都遇到了延误,但最坏的情况是延误总是不同的。
循环在线程中运行。
我试图给线程更大的优先级,但没有成功。
附加信息
服务器在 Windows 7 操作系统上运行。