Core Data 可以在 iOS 上延迟获取 BLOB 属性吗?
Posted
技术标签:
【中文标题】Core Data 可以在 iOS 上延迟获取 BLOB 属性吗?【英文标题】:Can Core Data lazy-fetch a BLOB attribute on iOS? 【发布时间】:2010-10-20 15:57:09 【问题描述】:我将照片作为可转换属性存储在我的核心数据实体中,这是要加载到 iPhone 内存中的大量数据。如果我想展示一个列出所有实体(可能数百或数千)的 TableView,但只需要显示它们的标题,Core Data 是否仍会在需要之前获取每张照片并将其存储在 RAM 中?
我想要做的是仅当用户选择要在另一个 ViewController 中查看的记录时才“延迟获取”照片。最节省内存的方法是什么?
【问题讨论】:
【参考方案1】:在更多的 RTFM 之后自己找到了答案。简而言之:没有。如果您想将照片存储在 Core Data 模型中,那么最好为与主实体一对一关系的照片创建一个单独的实体类型。仅当您在代码中实际需要它时,内置的错误行为才会延迟获取照片实体。
在此处记录:http://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/CoreData/Articles/cdPerformance.html#//apple_ref/doc/uid/TP40003468-SW5
【讨论】:
以上是关于Core Data 可以在 iOS 上延迟获取 BLOB 属性吗?的主要内容,如果未能解决你的问题,请参考以下文章
IOS/objective-c/core-data:如何从相关实体获取属性
Core Data 可以在 iOS 上提供哪些(如果有)ACID 保证?