我已经阅读here关于提高QML利用QElapsedTimer而不是简单的QTimer(基于QT事件循环)的定时器准确性的可能性,但我不清楚我该怎么做该...
是否有人可以帮我提供完整的例子?
答案 0 :(得分:2)
QElapsedTimer
是衡量时间的一种方法。当给定的时间量过去时,它没有提供一种将控制权返回给代码的方法,因为它没有任何阻塞方法。它也没有任何信号/回调。
使用QElapsedTimer
提供准确间隔时间的唯一方法是旋转:在紧密循环中,您将继续检查计时器,直到经过一段时间,然后继续执行代码。除非它会被谨慎使用 - 仅在应用程序启动期间使用 - 否则会对电池寿命和能耗产生可怕的影响。它是一种具有非常特殊用途的黑客,在普通的QML代码中是不需要的。
您尝试解决的问题是什么?