如果我在 cocos2d 中制作一个简单的 Xcode 项目,我总是想知道在以下情况下会发生什么:
方法 A 每 0.01 秒调度一次
方法 B 每 1 秒调度一次
现在假设方法 B 是一个很大的方法并且需要一些时间来计算。它会被方法 A 中断吗?
换句话说,一个方法总是会在另一个方法开始之前完成吗?
我还没有创建线程或任何东西。
最佳答案
一般来说,当您在 UI 应用程序的 UI 线程中调度内容时,一旦启动特定操作,它就不会中断(错误除外)。这不仅适用于 iOS,也适用于大多数 UI 平台。
系统可能会中断 UI 线程来处理硬件中断(或者,例如,由于接收到的单元信号而导致的中断),但这些中断(大部分)对应用程序来说是“透明的”。
但您永远不会被自己的操作打扰。
关于iphone - Objective C,一次一种方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8732010/