【发布时间】:2014-05-09 08:58:25
【问题描述】:
我只是想确保我所做的是正确的!
我使用了父子 NSManagedObjectContext 模式,其中
我有一个默认私有队列 NSManagedObjectContext,类型为 NSPrivateQueueConcurrencyType,并且
我有 一个 MainQueue NSManagedObjectContext 类型为 NSMainQueueConcurrencyType ,其父级是默认私有队列,
对于每个视图控制器,我将创建一个私有队列上下文,其父队列上下文为主队列上下文,
是这样的,
私人上下文-> 主要上下文-> 其他背景
所以我的问题是,此设置是否需要 NSManagedObjectContextDidSaveNotification 将更改传播到父上下文,否则它会自动冒泡,因为所有其他上下文都是父上下文的子上下文和主上下文
因为目前正在使用上下文保存通知来合并更改并且经常出现以下错误
致命异常:NSInternalInconsistencyException 这个 NSPersistentStoreCoordinator 没有持久存储。它无法执行保存操作。
2 CoreData 0x2f2f44c9 -[NSPersistentStoreCoordinator executeRequest:withContext:error:] + 3228
3 CoreData 0x2f315db1 -[NSManagedObjectContext save:] + 824
4 App 0x000a3279 -[CoreDataManager saveContext:withCompletionBlock:] (CoreDataManager.m:144)
5 App 0x000a31f9 __46-[CoreDataManager contextDidSaveNotification:]_block_invoke (CoreDataManager.m:134)
6 CoreData 0x2f3798f9 developerSubmittedBlockToNSManagedObjectContextPerform_privateasync + 68
【问题讨论】:
标签: ios objective-c core-data