从领域限制:
https://realm.io/docs/objc/latest/#current-limitations
“任何单个Realm文件都不能大于你的应用程序允许在iOS中映射的内存量 – 这会改变每个设备,并取决于该时间点内存空间的碎片程度(有一个雷达打开这个问题:rdar:// 17119975).如果你需要存储更多数据,你可以将它映射到多个Realm文件.“
这是否意味着单个Realm文件始终存储在RAM中?
或者这是否意味着地址空间应该足够大?
这句话非常令人困惑……
解决方法
由于Realm在底层使用mmap,因此它目前依赖程序
address space来获得大于Realm文件大小的连续无人认领地址块.这与实际的可用内存量不同,因为内存可以从地址空间的许多不同部分中释放出来,留下大量未使用的内存,但没有足够的大块地址空间来映射Realm文件.