objective-c - 核心数据故障

标签 objective-c ios core-data nsmanagedobjectcontext fault

我正在使用 Restkit 从服务器映射 Json 数据,并通过从数据库中获取来显示这些数据。 我的 View 中有一个刷新按钮,它再次执行上述操作。

场景: 我有两个具有一对一关系的表 Key & Profile。我正在使用以下代码从数据库中获取数据

NSFetchRequest *fetchRequest = [Key fetchRequest];
[fetchRequest setRelationshipKeyPathsForPrefetching:[NSArray arrayWithObject:@"Profile"]];
[fetchRequest setIncludesSubentities:YES];
NSArray *sortedObjects = [Key executeFetchRequest:fetchRequest]; 

以上数组返回数据库中的所有对象。但是当我使用断点检查时,我遇到了一些核心数据错误,这是没有显示所有数据的原因。

//sortedObjects中的所有数据都是这样

<Key: 0x889f2f0> (entity: Key; id: 0x889e400 <x-coredata://981A476D-55AC-4CB4-BBD8-E0285E522412/Key/p1489> ; data: <fault>)

任何想法

最佳答案

这可能是对“故障”的误解。

Apple's documentation 中所述:

Faulting is a mechanism Core Data employs to reduce your application’s memory usage.

A fault is a placeholder object that represents a managed object that has not yet been fully realized, or a collection object that represents a relationship:

因此,如果您在使用 Core Data 时在日志中看到“故障”一词,这并不意味着发生了错误。您在应用中发现了哪些意外行为?

关于objective-c - 核心数据故障,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13046291/

相关文章:

c++ - 游戏引擎 C++ 和 Objective-C/Xcode 编码

ios - 如何创建居中对齐的 Nsstring

ios - 如何在不使用AppStore的情况下将要测试的应用程序分发给Friends

objective-c - 使用 NSValueTransformer 设置 NSManagedObject 实例的值

objective-c - 指定 Storyboard的入口点(不是初始 View )

objective-c - 使用 open() 保证文件权限与使用 NSData 文件写入方法写入的文件的权限相同

ios - iOS 上可能的最大字体大小

ios - iOS 构建中不包含 Visual Studio Cordova 插件

ios - NSManagedObject 验证和子类

ios - CoreData 与 tableView 部分