繁体   English   中英

在iPhone应用程序的Serial Queue中读取核心数据

[英]Read Core data in Serial Queue for iPhone app

我有一个使用核心数据的应用程序,值是从互联网上的链接中获取的。

当我在AppDelegate中创建串行队列并且此操作没有任何问题时,这运行得很好。

现在,当我尝试在UITableViewController中重新创建类似方案并在串行队列中执行相同方案时,当控件到达

NSError *error;
NSArray *match = [context executeFetchRequest:fetchRequest error:&error];

执行控制消失,然后此代码将保留在执行中直到永恒。

谁能帮我解决这里到底有什么问题?

仅供参考,我将相同的ManagedObjectContext传递给串行队列。

最后一句话可能是关键:受管对象上下文的设计目的不是由多个线程/队列使用。 有关更多信息,请参见《 核心数据编程指南》中并发部分 如果您的应用仅需要支持iOS 5+,那么您可以通过在5.0 添加新的私有队列上下文来解决此问题(并摆脱管理自己的串行队列的麻烦)。 否则, 必须确保每个线程/队列都有其自己的上下文,并且仅将安全信息(如托管对象ID)从一个上下文传递到另一个。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM