任何iPhone应用程序使用的内存

时间:2010-11-12 18:12:14

标签: memory-management ios

有一些我对iOS内存管理不了解的事情。

  1. 我想知道iPhone应用程序在设备上运行时通常需要多少内存(是否有任何修复号码如10MB?)

  2. 如果一个应用程序包含大量大图像,那么对内存的影响是什么?它们只在加载时影响内存吗?

  3. 当有多个应用运行时,iOS如何管理内存?

  4. 请帮助我理解这些概念。

2 个答案:

答案 0 :(得分:4)

iOS设备上的应用没有明确或固定的内存容量。

也就是说,据报道有些游戏应用程序使用超过55MB的内存,但据报道,如果在设备重置后没有立即运行,操作系统也会在相当大的时间内杀死这些游戏。

如果您使用22MB或更少的内存,操作系统仍然会杀死您的应用程序,因为没有足够的可用内存,但它也必须杀死应用程序商店中的大部分其他应用程序,所以你会非常好的公司。

当任何应用程序(前台或后台)请求足够的内存来充分耗尽内存池时,会向其他应用程序发送内存警告。如果内存池变得足够小,应用程序就会被杀死,包括可能是前台应用程序,如果它是一个很大的内存占用。

答案 1 :(得分:3)

Q1)当然,没有固定的价值。每个应用程序(和应用程序实例)将根据其任务使用不同的内存量。但是,有一个最大值。达到此最大值将触发内存警告,操作系统可能会将其终止。

Q2)图像:取决于您一次或通过动画显示的数量。

Q3)前台中的应用程序获得分配给它的最多内存。后台应用程序可以请求内存来执行后台任务。

最佳做法的好文章:

http://inessential.com/2010/06/28/how_i_manage_memory