Realm 如何解决列表中的冲突?

乔尔斯

Realm 移动数据库如何解决多个用户同时写入同一个列表的冲突?

这似乎不是一个简单的最后写入获胜的情况。例如在 List [a, b, c, d] 中,user1 可以交换 a 和 b [b, a, c, d],user2 可以交换 c 和 d [a, b, d, c]。同步后,它们都具有组合更改 [b, a, d, c]。

西蒙问乌尔斯内斯

冲突通常总是被解决,这样看起来相应的操作是按照它们在不同设备上实际发生的实时顺序在本地执行的。

插入是这样排序的,如果两个设备将元素添加到列表中,元素将按照它们被添加的顺序结束。

元素交换操作有点难以想象,但同样的原则也适用。如果您交换了列表[a, b, c]并且每个设备分别独立地执行swap(0, 1)att=0swap(1, 2)at t=1,则结果将就好像操作swap(0, 1)然后swap(0, 2)已在每个设备上运行一样,产生[c, a, b]. 请注意第二个交换是如何转换为考虑第一个交换的,从而保持列表元素标识。

推理冲突解决的最简单方法是它总是解决冲突,使得操作看起来是在本地发生的。我们希望围绕此行为改进我们的文档,但挑战在于存在多种操作组合。如果您对文档中的哪些信息可以回答您的问题有任何建议,请随时向我们发送进一步的反馈。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何解决Eclipse SVN中的冲突

来自分类Dev

如何解决EGit中的冲突

来自分类Dev

如何使用realm.addNotificationBlock?

来自分类Dev

在Swift App中安装Realm

来自分类Dev

如何正确使用Realm

来自分类Dev

在Realm中更新对象

来自分类Dev

Android Realm迁移:添加新的Realm列表列

来自分类Dev

如何在Realm,Swift中解决检索到的对象的键?

来自分类Dev

如何使用Realm排序?

来自分类Dev

在Realm中执行简单迁移

来自分类Dev

Realm android中的逻辑AND操作

来自分类Dev

Realm Swift:如何捕获RLMException?

来自分类Dev

Realm RLMSupport中的条件WHERE

来自分类Dev

整理列表中的Android Realm数据

来自分类Dev

Realm for Xamarin中的简单迁移

来自分类Dev

访问Realm对象的错误列表:从错误线程访问的Realm

来自分类Dev

Realm如何处理关联?

来自分类Dev

在Swift / Realm中编辑项目

来自分类Dev

从Realm requestResults中创建分组列表

来自分类Dev

如何解决Eclipse SVN中的冲突

来自分类Dev

如何解决JavaScript代码中的冲突?

来自分类Dev

如何使用Realm Browser创建新的Realm实例

来自分类Dev

Android Realm中的多个表

来自分类Dev

在Realm对象中交换元素

来自分类Dev

如何解决eclipse egit中的冲突

来自分类Dev

如何克隆整个 Realm?

来自分类Dev

Realm 中的单个对象

来自分类Dev

Realm - 返回数组列表

来自分类Dev

如何解决GraphQL中的命名冲突?