我正在阅读NSManagedObjectContext
refresh(_:mergeChanges:)
的文档。
如果flag为NO,则对象变为故障并且任何未决 变化丢失了。在访问对象之前,该对象仍然是错误的 再次,它的属性值将从重新加载 存储或上次缓存状态。
如果flag为YES,则对象变为fault,并且从商店或者值中重新加载对象的属性值 最后缓存状态然后进行任何更改(在本地 上下文)重新应用于那些(现在新更新的)值。 (如果 flag为YES,将值合并到object中将始终成功 因此,这种情况不存在“合并冲突”或“合并冲突” 合并是不可能的。)
我有一个mainQueueConcurrencyType
类型NSManagedObjectContext
作为privateQueueConcurrencyType
个孩子。{/ p>
当我在私有/父对象中创建对象时,即使它们没有保存,我也可以在子上下文中使用NSManagedObjectID
访问它们。
所以在这种情况下,是父上下文“最后缓存状态”的提供者?
在refresh(_:mergeChanges:)
的“单线”描述中,它只说
更新托管对象的持久属性以使用 来自持久性商店的最新值。
这对我来说真的很困惑。
我已阅读the doc的父商店部分。因此子上下文不使用协调器。这与refresh(_:mergeChanges:)
的陈述相冲突,是吗?