Ios 是否可以在私有上下文中进行提取和保存,而不向主上下文通知任何内容。?

Ios 是否可以在私有上下文中进行提取和保存,而不向主上下文通知任何内容。?,ios,core-data,Ios,Core Data,我对coredata有一个疑问:是否可以在私有上下文中进行获取和保存,而不向主上下文通知任何内容?我在许多示例和教程中看到,在每次保存或获取中,我们最终都会使用主上下文。为什么有必要?若我使用同一个持久协调器在私有队列上调用save,它将不会写入光盘?请在否决投票前澄清我的疑问。简单的答案是肯定的,您可以在私有上下文上进行获取和保存,与主上下文使用相同的持久存储协调器(和持久存储)。我已经为我实现了它。通常,您希望主上下文通过合并更改来了解更改,但这不是coredata的要求。这取决于您试图在每

我对coredata有一个疑问:是否可以在私有上下文中进行获取和保存,而不向主上下文通知任何内容?我在许多示例和教程中看到,在每次保存或获取中,我们最终都会使用主上下文。为什么有必要?若我使用同一个持久协调器在私有队列上调用save,它将不会写入光盘?请在否决投票前澄清我的疑问。

简单的答案是肯定的,您可以在私有上下文上进行获取和保存,与主上下文使用相同的持久存储协调器(和持久存储)。我已经为我实现了它。通常,您希望主上下文通过合并更改来了解更改,但这不是coredata的要求。这取决于您试图在每个上下文中保存哪些数据。

不同的托管对象上下文不会自动意识到彼此所做的更改。如果在两个上下文中获取同一对象,在其中一个上下文中对其进行更改,然后保存更改,则另一个上下文将不知道新值,除非以某种方式合并更改。这意味着它拥有陈旧的数据。这就是为什么几乎每个人都会合并更改,因为您希望不同的上下文了解新的更改


在您的情况下,如果您对私有上下文进行了更改,但没有将这些更改合并到主队列上下文中,则主队列上下文将不知道这些更改,并且仍将显示旧值。

您关心的是什么问题?您认为可能会出现什么问题?我想使用私有上下文保存coredata,但我看到的大多数文档都是通过主上下文进行保存和获取的,即在父-子先子保存,然后父保存,通知方法-私有上下文先保存,然后主上下文保存,为什么会这样?为什么这一切都以主上下文结束?为什么单独的私有上下文不能保存coredata?