iphone – 什么是跑马路?

iphone – 什么是跑马路?,第1张

概述阅读NSRunLoop的文档后,我不太了解。我产生一个次要线程,其中有一个NSTimer,每1秒启动一次。哪些使用performSelectorOnMainThread更新屏幕上的标签 但是为了让它上班,我需要一个跑步,但我不明白它的概念? 有人可以尝试解释一下吗? 谢谢。 运行循环是有效的: while(... get an event ...) ... handle event ... 阅读NSRunLoop的文档后,我不太了解。我产生一个次要线程,其中有一个NSTimer,每1秒启动一次。哪些使用performSelectorOnMainThread更新屏幕上的标签

但是为了让它上班,我需要一个跑步,但我不明白它的概念?

有人可以尝试解释一下吗?

谢谢。

解决方法 运行循环是有效的:

while(... get an event ...)    ... handle event ...;

它在线程上运行;主线程具有处理用户事件的主事件循环,并且发生大多数UI绘图等。 documentation explains it in detail。

但是,在您的情况下,您不需要线程。

听起来你所做的就是定期更新UI中的标签;一些不是非常计算密集的东西。

只需安排你的计时器在主线程,并完成它。不需要旋转线程,使用performSelectorOnMainThread:,或者导致在线程之间保证数据一致性的所有复杂性。

对不起 – 不明白你的问题。

在内部,运行循环通过基本上在运行循环中放置一个标志来表示“经过这段时间后,触发定时器”。没有额外的线程涉及,更好的是,它不是轮询来检查时间。考虑一个运行循环来有效地保持一个时间轴。它将被动地让时间过去,直到有时间线上发现了一些兴趣(所有这些都没有轮询 – 轮询吸引力被避免)。

这的确意味着,一个计时器永远不会100%准确。同样,如果你有一个定时器每秒钟重复一次,它会随着时间的推移而漂移。

也;而不是直接触发绘图事件。您的计时器将使需要更新的视图无效,然后让底层对象处理最佳实际更新屏幕时。

总结

以上是内存溢出为你收集整理的iphone – 什么是跑马路?全部内容,希望文章能够帮你解决iphone – 什么是跑马路?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1037884.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存