如果引用丢失,则从列表中处理/删除对象

时间:2016-09-26 06:24:12

标签: c# wpf

我有一个“食谱弹出窗口”,用户可以在其中使用多个实例。每个弹出窗口都有一组图像。两种配方都可以切割大量图像。这些图像是从svg渲染的。为了减少内存/ CPU使用量,我想制作一种“图像缓存”(带有渲染svgs集合的静态类)。

问题: 如果recipe1具有ImageA和ImageB,则recipe2具有ImageB和ImageC,则在recipe1关闭后,只应销毁/处置ImageA(从集合中删除)。

1 个答案:

答案 0 :(得分:1)

缓存的目的是保存当前的元素,但在不久的将来可能需要这些元素,并使其访问速度更快。

那么为什么不将MemoryCacheSlidingExpiration中描述的this answer一起使用?这样,所有尚未加载一段时间的图像都将被删除。