共享NSManagedObjectContext,具有多个performBlock调用

时间:2014-07-30 12:44:18

标签: ios objective-c core-data

我正在研究一个程序,该程序反复需要获取新数据,解析并使用Core Data存储它。其中一个问题是数据在多个Web服务请求中被分割,因此解析需要在组装最终对象之前分成各个部分。所有解析也需要在后台进行。

我考虑过为每个请求创建一个新的NSManagedObjectContext,但问题是我必须找到一种方法将我的对象从一个上下文传递到另一个上下文,这对我来说似乎很棘手,考虑到它可以轻松完成10个解析步骤,直到对象完成。

所以现在我考虑使用NSManagedObjectContext初始化NSPrivateQueueConcurrencyType。它似乎工作正常,但有时我会在流程的一个步骤中收到EXC_BAD_ACCESS。所以我的问题是,我在正确的道路上吗?我知道我可以嵌套多个performBlock调用,核心数据将处理线程。但是我可以使用多个非嵌套的performBlock调用随时间推移(这就是我正在做的事情),只要它们都在同一个NSManagedObjectContext上运行吗?

1 个答案:

答案 0 :(得分:0)

像这样实现它,事实证明它工作正常。