gpt4 book ai didi

iphone - 多少个 NSTimer 就太多了?

转载 作者:行者123 更新时间:2023-12-03 18:55:04 25 4
gpt4 key购买 nike

在 iPhone OS 设备中,同时运行多少个 NSTimers 会太多?我有一堆例程由每秒触发 25 次的单个计时器调用,而且事情非常不稳定、缓慢且沉重。我正在考虑添加一个或多个额外的 NSTimer 来稍微分配工作负载,但我担心有多少个可以使用。这可能在某种程度上取决于我意识到的每个单独计时器的触发频率,因此假设触发频率为每秒 20~30 次。那么,多少个 NSTimer 才算太多呢?

最佳答案

在内部,NSTimers 都是在单个硬件计时器上实现的。操作系统为所有正在运行的应用程序保留一个中央计时器列表,并简单地为最快的事件安排一个硬件计时器。

添加计时器不会改变应用程序的行为。也就是说,就像向本质上是单进程的应用程序添加线程使运行时管理更容易一样,添加计时器可以帮助您划分问题。

鉴于您引用的时间,我猜测该计时器是游戏或类似内容的帧更新同步。我建议几件事:

  1. 将当前的绘图代码拆分到一个单独的线程中,并在其中运行(相同的)计时器代码。这应该会给你更多的控制权。

  2. 分析您的代码以查看每个 1/25 秒槽中执行了多少处理 - 您可能(而且很可能)只需要优化您的代码。

关于iphone - 多少个 NSTimer 就太多了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/891569/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com