2012-03-23 44 views
1

我很好奇,在高层次上,人们如何使用核心数据缓存半永久性的特定信息。例如,有一些信息是我想要关闭远程服务器,然后坚持不超过24小时,其他数据我想坚持,比如不超过10分钟。核心数据和半永久性数据

每次加载视图时,我都不想重新加载它(因为它离开了网页)。但是,与此同时,如果数据已经过期,我不希望它被重用。相反,我想清除商店并重新加载。

谢谢。

回答

2

对我来说似乎很简单。假设一切都有时间戳,定期从Core Data存储中删除过期的项目会非常容易。

你可以接近它两个方面:

对于一些像Twitter客户端,你可能拥有的观点只是显示无论是在商店。在您下载新数据时,您还可以清除过期的旧数据。所以它只是更新过程的一部分。

如果您想确保您的产品从未显示过期数据,那么您在查询商店时应包括到期时间。换句话说,您在查看数据时进行过滤。如果您觉得有必要,您还可以使用定时器定期更新视图。在这种情况下,您可能在商店中过期的数据只是您隐藏的;不过,我可能会等到下载才能真正清除它。

+0

谢谢。我唯一的问题是,如果看起来过期了,我想刷新所有的实体,但是,也许我可以通过一个单独的实体来处理这个问题,该实体跟踪特定实体最后更新的时间。 – user1146403 2012-03-23 22:34:37