我在主要队列中有NSManagedObjectContext
(AppDelegate
中提供的默认上下文),我在私有中创建了另一个NSManagedObjectContext
队列以请求Web服务的数据更新。我使用主上下文来获取要在整个应用程序中显示和管理的所有对象,并使用私有上下文插入我从服务中接收的新对象,以避免阻止UI并避免干扰" ;如果用户和/或应用程序正在使用它们,则使用主上下文中的对象。这两种语境都是兄弟姐妹,他们不是父母和孩子。这是因为我需要创建所有新对象以便稍后知道是否应该删除其中的一些(对象的属性指示了这一点)。
关键是,我有重复的对象集,一个在主上下文中,另一个在私有上下文中。他们应该有不同的对象ID,但根据我的应用程序的逻辑,他们是"相同"对象。如果我在主要上下文中有objectA
,并且我在私有上下文中收到相同的objectA
但是有更新的值,我需要在主要上下文中用objectA
替换objectA
在私人环境中。但他们理论上有不同的objectID
。我的问题是:
objectA
,将其从那里删除,然后使用objectWithID
来转移"转移"从私人环境到主要的objectA
?考虑到主要上下文在主队列中,而私有在私有队列中。objectA
,然后保存私有上下文,然后再从主上下文中获取objectA
吗?提前致谢