iOS虚拟内存:当内存不足时,iOS会自动分页出静态const数组吗?

如果你有一个巨大的静态const数组(比如数十兆字节),它永远不会改变并且仅在启动时使用,它是否会在内存不足时自动寻呼?也就是说,iOS是否知道您的静态const数据可以简单地从您的应用程序包中重新加载?

显而易见的替代方法是将这些数据放在一个文件中,并将其作为只读数据进行内存映射(肯定会被自动分页)或将其读入malloc缓冲区并在完成时释放它 – 但这样做的工作量比在这种情况下必要吗?

解决方法

iOS内存管理的实现没有记录,并且可能随操作系统更新而变化.对于任何重要的事情,我都不会依赖无证件的行为.有没有理由你不能将你的数据存储在sqlite中(我是 YAPDatabase的粉丝,但任何数据库都可以工作)并根据需要查询它?这会降低你的内存使用量,让应用程序感觉更加快捷.

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...