实际上,Core Data 如何检测冲突?

Posted

技术标签:

【中文标题】实际上,Core Data 如何检测冲突?【英文标题】:How is Core Data detecting the conflicts, actually? 【发布时间】:2010-06-08 19:09:53 【问题描述】:

Apple 谈到 -detectConflictsForObject:

如果在下一次调用保存时: 对象已在其 持久存储,保存失败。这 允许乐观锁定 不变的对象。冲突检测 总是在更改或 已删除的对象。

那么这是什么意思?如果我只是修改一个托管对象然后保存上下文,总是会发生冲突检测吗?这种冲突检测是否只是简单地比较“记录”的时间戳以查看“新”数据是否实际上是“旧”数据?这是冲突吗?

【问题讨论】:

【参考方案1】:

不,这不是冲突。如果自上次刷新内存中的对象以来磁盘上的数据发生了更改,则会发生冲突。内部实现未定义和实现细节。

我们唯一需要担心的是,它只会在磁盘上的数据在正在保存的上下文之外发生更改时发生。

【讨论】:

以上是关于实际上,Core Data 如何检测冲突?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Mac 和 iPhone 之间同步 Core-Data 应用程序?

rk3568 | rk平台GPIO冲突检测小技巧

rk3568 | rk平台GPIO冲突检测小技巧

如何解决 .NET Core 包版本冲突

如何解决包冲突问题

如果Core Data count / fetch请求中的实体名称错误,如何避免崩溃?