【问题标题】:Refresh private queue when main queue changes in Core Data当 Core Data 中的主队列发生变化时刷新私有队列
【发布时间】:2016-01-30 08:00:38
【问题描述】:

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

我找不到官方解决以下情况:当私有队列在做一些后台工作而主队列删除一个对象时,我在访问这个时得到一个未捕获的异常“Core Data could not fulfill a fault”对象在后台队列中,因为它被删除了。

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

【问题讨论】:

    标签: objective-c cocoa core-data


    【解决方案1】:

    是的,观察 did-save 通知,并将更改合并到

    [context mergeChangesFromContextDidSaveNotification:notification];
    

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-24
      • 1970-01-01
      • 2011-09-23
      • 2014-07-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多