内存中领域是否在 Swift 中拥有磁盘持久化 Realm 数据的副本



只是想理解,当我们尝试使用内存中的领域实例访问对象时,它是复制磁盘持久化的领域数据,还是是一个干净的领域实例,对象中没有数据。

我确实了解两个领域实例都指向相同的对象架构,但仍然感到困惑。

我的项目中同时具有磁盘持久性和内存中域

当我尝试查询磁盘持久化领域时,如果存在,则返回数据对象,而另一方面,如果我在内存领域执行相同的查询,它总是返回0对象。

任何帮助将不胜感激。

内存中的 Realm 将是一个干净的 Realm 实例。它不会干扰任何其他领域(磁盘上或 elswhere(。一旦您的申请终止,所有条目都将消失。

您甚至可以同时运行多个内存中 Realm 数据库,例如,为每个单元测试类提供一个干净的数据库。只需确保为每个测试使用不同的inMemoryIdentifier即可。

var config = Realm.Configuration()
config.inMemoryIdentifier = self.name // use the test class name as identifier
let realm = try Realm(configuration: config)
return realm

最新更新