【发布时间】:2016-09-24 16:18:34
【问题描述】:
我们正在设计一个从后端缓存大量数据的企业应用程序。用户可以打开任意数量的应用程序窗口,每个应用程序窗口加载自己的数据并缓存。为了以某种方式管理内存消耗并防止整体操作系统性能下降,我们决定编写一个缓存管理器,它会自动监控应用程序的内存占用并在需要时从缓存中删除数据。
所以问题是我们很难确定是否是时候释放内存了。目前我们使用一种非常简单的方法——当应用的内存使用量超过物理内存的 80% 时,我们就开始从缓存中丢弃东西。
是否有任何(替代方案?)处理此类问题的既定做法?
【问题讨论】:
标签: c# .net memory memory-management clr