如果你有一个巨大的静态const数组(比如数十兆字节),它永远不会改变,只在启动时使用,它是否会在内存不足时自动寻呼?也就是说,iOS是否知道您的静态const数据可以简单地从您的应用程序包中重新加载?
显而易见的替代方法是将数据放在一个文件中,并将其作为只读数据进行内存映射(肯定会被自动分页)或将其读入malloc缓冲区并在完成后释放它 - 但是在这种情况下,还有更多的工作要做吗?
答案 0 :(得分:1)
iOS内存管理的实现没有记录,并且可能随操作系统更新而变化。对于任何重要的事情,我都不会依赖无证件的行为。是否有任何理由无法将您的数据存储在SQLite中(我是YAPDatabase的粉丝,但任何数据库都可以工作)并根据需要进行查询?这会降低你的内存使用量,让应用程序感觉更加快捷。