iphone - 核心数据 : error: NULL _cd_rawData but the object is not being turned into a fault

标签 iphone core-data

保存到核心数据时偶尔会出现此错误。我无法重新创建它。

有没有人有过此错误的经验;

CoreData: error: NULL _cd_rawData but the object is not being turned into a fault

最佳答案

原因:

当对象的上下文不属于当前线程时,就会发生这种情况。错误表现出来的多种方式之一。

调试:

发生崩溃时执行以下操作:

  1. 检查发生崩溃的线程(Xcode > 调试导航器)
  2. 在控制台打印出NSManagedObjectContext的并发类型
  3. 如果并发类型为 mainQueueConcurrencyType,则它需要位于主线程上,否则位于后台线程上。

检查并发类型的控制台命令:

p context.concurrencyType

在上面的示例命令中,NSManagedObjectContext 存储在变量 context

控制台输出:

(NSManagedObjectContextConcurrencyType) $R4 = mainQueueConcurrencyType

关于iphone - 核心数据 : error: NULL _cd_rawData but the object is not being turned into a fault,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9225046/

相关文章:

android - JWPlayer 无法在 iPhone 和 iPod 中运行

iphone - 敌人和斜坡

objective-c - 从核心数据实体中获取特定记录

cocoa - 将 NSSegmentedControl 与 CoreData 结合使用

iphone - 客户端在 iPhone 上禁用推送通知

iphone - 如何计算帧大小以按行绘制 CoreText

ios - 单击单元格时如何使用另一个数组更新 UICollectionView?

swift 核心数据 : fetchBatchSize vs fetchOffset

ios - 反转行和列 SQLite

iphone - 为什么 NSFetchedResultsController 在设置获取批量大小时加载所有行?