gpt4 book ai didi

ios - 限制 Core Data 存储大小的最佳方法是什么?

转载 作者:行者123 更新时间:2023-11-29 00:43:13 25 4
gpt4 key购买 nike

我有一个应用程序可以从服务器获取核心数据对象。项目的数量可能非常大。限制 Core Data 将存储的项目数量的最佳方法是什么,这样我就不会在手机上使用太多空间?我在想,对于订购的项目,在 applicationWillTerminate 中,我可以将除前 N 个项目之外的所有项目标记为 toDelete ,然后在下次应用程序启动时删除它们(根据本文 http://inessential.com/2014/02/22/core_data_and_deleting_objects ).有什么想法吗?

最佳答案

正如经常发生的那样,什么策略是好的取决于人们如何使用您的数据。哪些数据更需要保持可用?什么不那么重要?

将前 N 项保持在有序关系中是一个简单的规则,并且相当容易实现。但它是否对您的应用程序取决于数据是什么、人们如何使用它,以及没有其他相关对象是否可能很重要。您甚至不需要 toDelete 标志,您只需要知道 N 的值。但请记住,您不能依赖实际调用的 applicationWillTerminate,因此这里不适合放置关键代码。

其他策略可能包括:

  • 删除最旧的数据(根据下载后的时间长度来衡量)。本地数据与服务器上的最新数据相匹配。
  • 删除最旧的数据,以自用户访问以来的时间长度衡量。本地数据与用户感兴趣的内容相匹配,同时还允许从服务器获取新数据。

这些更复杂,需要在您的持久存储中进行日期跟踪。只有您才能真正说出这些优势是否值得如此复杂。

不过,开始时,一个更重要的问题是:这重要吗?有多少元素是“非常大”的? “非常多”的项目是否转化为大量数据,或者只是很多小项目?

关于ios - 限制 Core Data 存储大小的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38981650/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com