Objective c 当核心数据中的主队列更改时刷新专用队列

Objective c 当核心数据中的主队列更改时刷新专用队列,objective-c,cocoa,core-data,Objective C,Cocoa,Core Data,我的应用程序中有两个托管对象上下文,一个类型为NSMainQueueConcurrencyType,另一个类型为临时NSPrivateQueueConcurrencyType,用于后台工作 我找不到以下情况的正式解决方案:当专用队列正在做一些后台工作,而主队列删除一个对象时,我在访问后台队列中的该对象时会收到一个未捕获的异常“Core Data Can not fulfill a fault”,因为该对象已被删除 这是一种预期的行为,但是我想知道如何处理这些情况而不出现错误异常。我认为这可以通过

我的应用程序中有两个托管对象上下文,一个类型为NSMainQueueConcurrencyType,另一个类型为临时NSPrivateQueueConcurrencyType,用于后台工作

我找不到以下情况的正式解决方案:当专用队列正在做一些后台工作,而主队列删除一个对象时,我在访问后台队列中的该对象时会收到一个未捕获的异常“Core Data Can not fulfill a fault”,因为该对象已被删除


这是一种预期的行为,但是我想知道如何处理这些情况而不出现错误异常。我认为这可以通过收听“NSManagedObjectContextDidSaveNotification”通知,然后将背景上下文与主上下文合并来解决,但这真的是最好的方法吗?

是的,观察did保存通知,并将更改与

[context mergeChangesFromContextDidSaveNotification:notification];
此外,您还需要确保设置了适当的合并策略