繁体   English   中英

使用核心数据的最有效方法是什么?

[英]What is the most efficient way to use Core Data?

我正在使用Core Data开发iPad应用程序,希望有人可以澄清有关Core Data的内容。

现在,我通过对viewDidLoad所有数据进行提取请求来填充表。 我宁愿在tableView:cellForRowAtIndexPath:提出单个获取请求。 谁能告诉我哪个更有效,为什么? 换句话说,发出大量小请求相对于发出一个大请求是否效率低得多?

您的提取请求具有一个名为fetchBatchSize的属性,该属性告诉您的提取请求仅批量提取数据。 这意味着对于20的批量大小,只有前20个项目被加载到内存中。 当用户滚动到20时,将自动加载另外20个项目,依此类推。

此外,Apple附带了一个NSFetchedResultsController类,该类设计用于管理数据的表示和编辑(它最适用于表视图,但是当然可以与其他类型的视图控制器一起使用)。 它为您处理了许多其他优化(如批量提取,内存管理等),因此,与您自己创建,发起和管理提取请求相比,它提供了更好的性能。

暂无
暂无

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

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