iphone - 如果函数执行时间太长,iPhone 会超时吗?

标签 iphone cocoa

我有一个函数,可以使用 cocoa 的 Url 对象从网络获取外部资源。它在模拟器上工作正常,但偶尔在设备本身上失败(这是一个谷歌查询,所以资源显然确实存在)。这让我相信硬件上存在一些内部超时障碍,但没有读到这样的障碍是否存在。

还有人遇到过类似的问题吗?或者知道超时是否已记录或可以更改?

最佳答案

如果你的应用程序看起来没有响应,iPhone 操作系统将终止你的应用程序 - 基本上是如果你的主线程阻塞了几秒钟。这在退出时也很重要 - 如果您在退出时保存,您将有一个非常小的窗口来完成保存,而操作系统可能正在执行其他操作,这使得情况变得更加复杂。如果您退出操作系统的时间过长,则会终止您的应用程序,这对用户来说就像您的应用程序无法保存一样。

我强烈建议您在硬件而不是模拟器上测试与时间相关的任何内容。该模拟器非常适合快速周转调试,但不能代表实际硬件上的性能。

如果您有任何繁重的工作要做,请在单独的线程上完成,以便 UI 保持对用户和操作系统的响应。

关于iphone - 如果函数执行时间太长,iPhone 会超时吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/169470/

相关文章:

macos - XCode 4 中文本字段的自定义 NSFormatter

objective-c - Cocoa/Objective-C Shell 命令行执行

iphone - 如何在 iPhone 中的 3 个不同数组中存储 3 个表解析值

iphone - 更改 UISlider iPhone 时模糊 UIImage

iphone - 两个日期之间的日期数组

iphone - 核心数据插入错误

cocoa - 如何向 NSTableView 添加页脚 View ?

swift - 自定义 NSLevelIndicator 不显示分配的值

ios - Sprite Kit 应用程序在真实设备上运行并插入计算机时崩溃

objective-c - 如何在 NSUserDefaults 中存储多个 NSMutableDictionary