0

告诉我我们的 iPhone 应用程序会因为内存不足而崩溃

(1) 当它使用的内存比 RAM 内置的多时。

或者

(2)它独立于 RAM 内存,当应用程序占用内存超过包括辅助(虚拟)内存的整个 iPhone 时,它​​会崩溃。

4

1 回答 1

1

iPhone 上没有虚拟内存。系统和所有应用程序必须适合 RAM。如果您的应用开始使用大量内存并接近此限制,您将收到内存警告。

App Delegate 将收到

- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application

大多数 UIKit 视图控制器会通知他们的子视图控制器这已经发生了。这意味着在您的视图控制器中,您可能会收到以下消息:

- (void)didReceiveMemoryWarning

还发布了一个通知,您可以收听

UIApplicationDidReceiveMemoryWarningNotification

在这些方法中,您需要摆脱可能占用大量您不再需要的内存的对象,例如图像缓存和大量数据。

如果您的应用程序继续消耗内存,那么您的应用程序将被系统杀死。这对用户来说就像一个崩溃。

于 2013-01-30T15:35:28.183 回答