如何解决NSTimers的主要滞后问题?

时间:2012-09-01 19:56:36

标签: objective-c xcode nstimer

在我正在制作的一个相当简单的应用程序中,我使用了许多NSTimers,一个以.01秒的速度运行,我用它来改变多个图像的位置。这导致严重滞后。我怎样才能解决这个问题?请详细解释,因为我对app dev很新。

1 个答案:

答案 0 :(得分:3)

来自NSTimer Docs(重点:我的):

  

计时器不是实时机制;它只在其中一个发射时发射   已添加计时器的运行循环模式正在运行且能够运行   检查计时器的开火时间是否已经过去。因为各种各样   输入源一个典型的运行循环管理,有效的分辨率   计时器的时间间隔限制为 50-100   毫秒即可。如果在长时间标注期间发生计时器的发射时间或   当运行循环处于不监视计时器的模式时,   在下次运行循环检查计时器之前,计时器不会触发。   因此,计时器可能发射的实际时间可能是   在计划的射击时间之后很长一段时间。

如果您想以显示频率工作,请参阅CADisplayLink

但是,你应该首先了解你的程序在哪里花时间来理解它变慢的原因(探查器)。