【发布时间】:2010-09-24 09:20:36
【问题描述】:
我真的很喜欢 WeakReference 的。但我希望有一种方法可以告诉 CLR 你认为引用有多弱(例如,在 1 到 5 的范围内)。那太好了。
Java 有 SoftReference、WeakReference,我相信还有第三种类型,称为“幻像引用”。那是 3 个级别,GC 在决定该对象是否获得印章时具有不同的行为算法。
我正在考虑对 .NET 的 WeakReference 进行子类化(幸运的是,有点奇怪的是它没有被密封)来创建一个基于过期计时器或其他东西的伪 SoftReference。
【问题讨论】:
-
也许如果你解释你要解决什么问题,你可能会得到一些好的解决方案。通常在这种粒度级别上工作并不是一个好主意,某种形式的过期缓存更合适,但这完全取决于问题。
标签: c# weak-references soft-references