我已经读过insertOrUpdate
比copyToRealm更快。
文档中的示例使用executeTransactionAsync
,最后没有任何插入或复制,即只在execute方法中设置对象上的字段。我确认它有效。
这是最佳做法吗?我只能猜测不必要地添加bgRealm.insertOrUpdate
会更慢......对吗?
感谢并保持伟大的工作
答案 0 :(得分:0)
insertOrUpdate()
用于插入一批非托管项目,没有建立他们之间的关系(因为您没有收到代理回复,因此避免代理对象的实例化 - 当插入3000个或更多项时,从外部API下载时非常有用)。 是"批量插入方法"。
copyToRealmOrUpdate()
用于插入一批非托管项目,但您还会收到托管代理,以便将其添加到其他托管对象的RealmList<T>
。
createObject()
创建托管代理,之后设置其任何字段都会反映在数据库中,而无需致电insert()
/ copyToRealm()
。