我有一个使用coredata和三种不同型号的iOS应用程序。数据从服务器的json提取中提取,然后保存。每个API调用都使用NSOperationQueue在线程上运行,因此它们永远不会同时执行。在最后的调用中,我保存到存储的最大模型,它是在保存发生之后应用程序挂起的。 UI变得无响应,调试器没有错误。这只发生在应用程序的第一次加载,之后每个后续加载运行完美。我已经尝试加载最后的api调用,但错误仍然发生。我收到委托回调controllerDidChangeContent:并且在方法中什么都不做。我很难过。谢谢大家的帮助。
答案 0 :(得分:2)
冻结"您的应用是因为您最有可能通过NSManagedObjectContext
将保存合并到主NSManagedObjectContextDidChangeNotification
。这是iOS 5.0之前的已知限制。
您可以更新到5.0并使用已添加的父子MOC设计,或者您可以跳过合并上下文和-reset
主要上下文并强制它在保存后重新加载相关数据。