核心数据中主队列更改时刷新专用队列

时间:2015-10-29 23:59:31

标签: objective-c cocoa core-data

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

我无法找到以下情况的官方解决方案:当主队列在主队列删除对象时执行某些后台工作时,我在访问此时遇到未捕获的异常“Core Data无法解决故障”自从它被删除后,后台队列中的对象。

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

1 个答案:

答案 0 :(得分:1)

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

合并
[context mergeChangesFromContextDidSaveNotification:notification];

此外,您要确保已设置适当的合并策略。