2016-03-05 61 views
0

我繼承了一些舊代碼,我在內存緩存中沒有驅逐策略,緩存使用數萬種不同類型的對象填充一次。應用程序的內存佔用量有時會超過500 MB,並且應用程序通常會因內存壓力而終止。我的問題是我真的需要通過核心數據設置緩存嗎?由於核心數據完成了將託管對象加載到內存中的工作,並最終將它們驅逐出去,我是不是更好地擺脫這種擁有多個數組和字典來存放大量對象的緩存?使用核心數據進行緩存

回答

0

您絕對應該避免在覈心數據設置上使用緩存。一旦對象被提取到一個託管對象上下文中,它們就被保存在內存中。反正主要是反正。所以你的問題的答案很可能是YES,但不知道緩存的原因也可能是相反的。我會先擺脫緩存並做一些性能測量。一旦所有場景都可以確認工作正常,那麼答案確實是肯定的。