iphone 3gs内存警告调用查询

时间:2011-02-27 22:44:52

标签: iphone memory-management ios4 iphone-3gs

嗨我只是想知道:iphone 3gs和iphone 4什么时候发出内存警告

我的意思是在我们的应用程序使用多少内存之后,这两个设备都会发出警告?

由于

2 个答案:

答案 0 :(得分:0)

没有严格定义,但Apple建议您不要使用超过24MB的图形内存,因为过度使用图形内存通常是应用程序收到内存不足警告的原因。 在iPhone上管理关键低内存情况的唯一好方法是实现didReceiveLowMemoryWarning委托方法,并在此时释放尽可能多的内存。这意味着例如:

  1. 当前加载在内存中的所有不可见图像
  2. 所有视图控制器及其子视图(如果未使用)
  3. 如果您的应用程序能够在稍后阶段重新加载该信息,这当然可以安全地完成。但didReceiveLowMemoryWarning是您申请的最后手段。

    为避免达到这一点,建议仅延迟加载资源,即当且仅当您需要它们时,并在不再需要它们时释放它们(例如在所有控制器上实现viewDidUnload)。

答案 1 :(得分:0)

你不知道什么时候开火。您不知道在后台运行的其他应用程序使用了多少内存,Safari保留了网页等.Pandora可能在后台流式传输并且可能使用大量内存。不要指望任何单一的内存量。懒惰加载,并在didRecieveMemoryWarning中释放未分配的分配。 如果您的应用程序需要大量内存,一些游戏开发人员会告诉用户在播放之前重启设备,以确保应用程序的最大内存和最佳性能。