出于某种原因,有时我的应用程序会挂起以下代码:
NSError *error;
if (![self.managedObjectContext save:&error]) {
NSLog(@"Couldn't save: %@", [error localizedDescription]);
}
有时并不总是挂起。如果我打破所有异常,那么Xcode将在保存调用中中断,但如果我关闭断点,它将永远挂起,不会崩溃或任何事情。
有什么想法吗?
答案 0 :(得分:6)
挂在使用ManagedObjectContext
的任何内容上都是死锁的标志。使用NSLocking protocol或为每个帖子和synchronize them创建新的MOC
。
Apple的另一个有用的文档 - > Concurrency with Core Data
答案 1 :(得分:-3)
您是否尝试将NSError *错误设置为nil?