2012-03-23 50 views
1

我很好奇,在高層次上,人們如何使用核心數據緩存半永久性的特定信息。例如,有一些信息是我想要關閉遠程服務器,然後堅持不超過24小時,其他數據我想堅持,比如不超過10分鐘。核心數據和半永久性數據

每次加載視圖時,我都不想重新加載它(因爲它離開了網頁)。但是,與此同時,如果數據已經過期,我不希望它被重用。相反,我想清除商店並重新加載。

謝謝。

回答

2

對我來說似乎很簡單。假設一切都有時間戳,定期從Core Data存儲中刪除過期的項目會非常容易。

你可以接近它兩個方面:

對於一些像Twitter客戶端,你可能擁有的觀點只是顯示無論是在商店。在您下載新數據時,您還可以清除過期的舊數據。所以它只是更新過程的一部分。

如果您想確保您的產品從未顯示過期數據,那麼您在查詢商店時應包括到期時間。換句話說,您在查看數據時進行過濾。如果您覺得有必要,您還可以使用定時器定期更新視圖。在這種情況下,您可能在商店中過期的數據只是您隱藏的;不過,我可能會等到下載才能真正清除它。

+0

謝謝。我唯一的問題是,如果看起來過期了,我想刷新所有的實體,但是,也許我可以通過一個單獨的實體來處理這個問題,該實體跟蹤特定實體最後更新的時間。 – user1146403 2012-03-23 22:34:37