Ios 致命异常:NSObjectInaccessibleException CoreData无法实现错误

Ios 致命异常:NSObjectInaccessibleException CoreData无法实现错误,ios,objective-c,core-data,Ios,Objective C,Core Data,有时,应用程序在尝试将辅助线程MOC合并到主线程MOC时崩溃。尤其是在将删除的对象合并到主线程对象时崩溃 这是我在应用程序代理中的合并代码: - (void)syncDidSave:(NSNotification *)saveNotification { if ([NSThread isMainThread]) { [self.managedObjectContext mergeChangesFromContextDidS

有时,应用程序在尝试将辅助线程MOC合并到主线程MOC时崩溃。尤其是在将删除的对象合并到主线程对象时崩溃

这是我在应用程序代理中的合并代码:

- (void)syncDidSave:(NSNotification *)saveNotification
{
    if ([NSThread isMainThread]) {
                [self.managedObjectContext
                 mergeChangesFromContextDidSaveNotification:saveNotification];
    } else {
            [self performSelectorOnMainThread:@selector(syncDidSave:) 
             withObject:saveNotification waitUntilDone:YES];
    }
}
我附上了几个屏幕截图,将显示堆栈跟踪

主线程img

次线程:


任何帮助或建议都将不胜感激

您是否在主线程知道该对象之前在次线程上创建和删除该对象?如果是这样,这将导致崩溃。CoreData不喜欢次线程MOC通知第一个线程说“请删除具有此ID的对象”,但具有该ID的对象在第一个MOC线程中不存在。您可能会认为默认情况下它可以忽略此情况,但也许有一个很好的理由不这样做,而是崩溃:)谢谢您的反馈。场景是事件将从应用程序添加到DB的任意位置。事件管理器将使用fetch result controller委托获得通知,然后根据事件类型执行操作,一旦操作完成,它将继续删除该特定事件。在这个was中,您可以将它将一个接一个地处理的事件列表排队。我有同样的问题-您已经有了解决方案吗??先谢谢你。