2016-03-05 95 views
0

我继承了一些旧代码,我在内存缓存中没有驱逐策略,缓存使用数万种不同类型的对象填充一次。应用程序的内存占用量有时会超过500 MB,并且应用程序通常会因内存压力而终止。我的问题是我真的需要通过核心数据设置缓存吗?由于核心数据完成了将托管对象加载到内存中的工作,并最终将它们驱逐出去,我是不是更好地摆脱这种拥有多个数组和字典来存放大量对象的缓存?使用核心数据进行缓存

回答

0

您绝对应该避免在核心数据设置上使用缓存。一旦对象被提取到一个托管对象上下文中,它们就被保存在内存中。反正主要是反正。所以你的问题的答案很可能是YES,但不知道缓存的原因也可能是相反的。我会先摆脱缓存并做一些性能测量。一旦所有场景都可以确认工作正常,那么答案确实是肯定的。