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

Memory management 任何iPhone应用程序使用的内存,memory-management,ios,Memory Management,Ios,关于iOS内存管理,有几件事我不了解 我想知道iPhone应用程序在设备上运行时通常需要多少内存(有没有像10MB这样的固定数字?) 如果一个应用程序包含大量大型图像,对内存有什么影响?它们是否仅在加载时影响内存 当有多个应用程序运行时,iOS如何管理内存 请帮助我理解这些概念。Q1)当然,没有固定的值。每个应用程序(和应用程序实例)将根据其任务使用不同的内存量。但是,有一个最大值。达到此最大值将触发内存警告,操作系统可能会终止此警告 Q2)图像:取决于一次或通过动画显示的图像数量 Q3)前台的

关于iOS内存管理,有几件事我不了解

  • 我想知道iPhone应用程序在设备上运行时通常需要多少内存(有没有像10MB这样的固定数字?)

  • 如果一个应用程序包含大量大型图像,对内存有什么影响?它们是否仅在加载时影响内存

  • 当有多个应用程序运行时,iOS如何管理内存

  • 请帮助我理解这些概念。

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

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

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

    最佳实践的好文章:


    iOS设备上的应用程序没有规定或固定的可用内存量

    也就是说,有报道称游戏应用程序使用了超过55MB的内存,但也有报道称,如果在设备重置后不立即运行,操作系统也会在很大一部分时间内杀死这些游戏

    如果你使用22MB或更少的内存,操作系统仍然可能会因为没有足够的可用内存而杀死你的应用程序,但它也必须杀死应用商店中大量的其他应用程序,因此你会有一个很好的伙伴


    当任何应用程序(前台或后台)请求足够的内存以开始充分耗尽内存池时,将向其他应用程序发送内存警告。如果内存池变得足够小,应用程序将被杀死,如果前台应用程序占用大量内存,则可能会被杀死。

    作为程序员还是用户,您想知道这一点吗?对于第三个问题,前台总是只有一个应用程序,但截至iOS4,后台可能有几个应用程序。当iOS需要更多的空闲内存时,后台的会被iOS杀死。你说的最大价值是什么?