在另一个问题中,Stephen C表示: 第二个问题是使用弱引用会有运行时开销。显而易见的成本是创建弱引用并调用它们的get方法。不太明显的成本是每次GC运行时需要做更多的额外工作。 那么对于弱引用而言,GC的成本到底是什么呢?需要做哪些额外工作,这一点有多大影响?我可以进行一些猜测,但是我真正感兴趣的是具体的机制。
ConditionalWeakTable(T)
将元数据附加到任意对象上,而无需担心在这些任意对象被垃圾回收时清理元数据表中的条目,这可能非常方便。根据您所做的事情,我想创建 很多 这样的对象可能会相当容易。 - binki