我有一个有趣的问题,我似乎无法找到解决方案-我有两个托管对象上下文,'main'和'backing'。'Main'使用NSMainQueueConcurrencyType创建,'backing'使用'NSPrivateQueueConcurrencyType'创建。此外,'backing'已设置为main的父级。我想在支持MOC上执行(可能很昂贵)写操作,然后让这些更改(完成后)冒泡到主上下文,因此由于使用NSFetchedResultsController,我的UI会更新。我的问题如下-似乎在调用mergeChangesFromContextDidSaveNotification之后
从服务器下载数据后,我试图将数据保存在CoreData中。根据Apple文档,我使用父子上下文来执行保存操作,如下所示:fileprivatefuncsaveDataInLocalDataBase(_mList:[Info]?){ifmList!=nil{letmainContext=self.managedObjectContextletprivateContext=NSManagedObjectContext(concurrencyType:.privateQueueConcurrencyType)privateContext.parent=mainContextprivateCo
我已将-com.apple.CoreData.ConcurrencyDebug1标志添加到我的目标。问题是我有一个正在运行的后台block,当我使用NSPrivateQueueConcurrencyType或NSMainQueueConcurrencyType时崩溃我的代码:dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0),^{NSManagedObjectContext*privateManagedObjectContext=[[NSManagedObjectContextalloc