iOS 应用程序启动时,是否将应用程序包的所有资源复制到内存 (RAM)?
Are all the resources of an App Bundle copied to memory (RAM) when an iOS App Launches?
我想知道当 iOS 应用程序启动时,应用程序的所有资源(图像、音频、视频)是否都被复制到内存中,因为如果是这样,那么就没有必要加载所有启动时的资源以避免以后出现任何延迟。
不,它们不是,这样做会使很多应用程序崩溃,因为资源总量太大而无法同时加载所有资源。
通常,您应该仅在需要时加载您需要的内容,或者尽可能提前到需要时加载。
大多数 iOS 设备只有 1GB RAM(最新的 iPad 已升级到 2GB),因此在物理上不可能在加载应用程序时加载所有资源。即使有足够的内存,这种做法也会大大减慢启动时间。所有 iOS 设备也使用快速闪存,因此没有理由将所有内容都推入 RAM。
当可能很快需要时,在后台的另一个线程上加载来自捆绑包和 Internet 的资源。
我想知道当 iOS 应用程序启动时,应用程序的所有资源(图像、音频、视频)是否都被复制到内存中,因为如果是这样,那么就没有必要加载所有启动时的资源以避免以后出现任何延迟。
不,它们不是,这样做会使很多应用程序崩溃,因为资源总量太大而无法同时加载所有资源。
通常,您应该仅在需要时加载您需要的内容,或者尽可能提前到需要时加载。
大多数 iOS 设备只有 1GB RAM(最新的 iPad 已升级到 2GB),因此在物理上不可能在加载应用程序时加载所有资源。即使有足够的内存,这种做法也会大大减慢启动时间。所有 iOS 设备也使用快速闪存,因此没有理由将所有内容都推入 RAM。
当可能很快需要时,在后台的另一个线程上加载来自捆绑包和 Internet 的资源。