有一些我对iOS内存管理不了解的事情。
我想知道iPhone应用程序在设备上运行时通常需要多少内存(是否有任何修复号码如10MB?)
如果一个应用程序包含大量大图像,那么对内存的影响是什么?它们只在加载时影响内存吗?
当有多个应用运行时,iOS如何管理内存?
请帮助我理解这些概念。
答案 0 :(得分:4)
iOS设备上的应用没有明确或固定的内存容量。
也就是说,据报道有些游戏应用程序使用超过55MB的内存,但据报道,如果在设备重置后没有立即运行,操作系统也会在相当大的时间内杀死这些游戏。
如果您使用22MB或更少的内存,操作系统仍然会杀死您的应用程序,因为没有足够的可用内存,但它也必须杀死应用程序商店中的大部分其他应用程序,所以你会非常好的公司。
当任何应用程序(前台或后台)请求足够的内存来充分耗尽内存池时,会向其他应用程序发送内存警告。如果内存池变得足够小,应用程序就会被杀死,包括可能是前台应用程序,如果它是一个很大的内存占用。
答案 1 :(得分:3)
Q1)当然,没有固定的价值。每个应用程序(和应用程序实例)将根据其任务使用不同的内存量。但是,有一个最大值。达到此最大值将触发内存警告,操作系统可能会将其终止。
Q2)图像:取决于您一次或通过动画显示的数量。
Q3)前台中的应用程序获得分配给它的最多内存。后台应用程序可以请求内存来执行后台任务。
最佳做法的好文章: