这里WeakRefence的用法是否实用?

时间:2014-11-13 00:12:20

标签: java

注意:以下引用的Provider可以说是扩展的根目录。他们提供各种各样的东西,因此当它们被卸载/移除时,所有它们的功能/对象都应该被提供。

所以我想要的是允许Provider处于弱可达的状态。我没有希望 GC只是在内存不足时收集它,或者仅仅是因为它没有被大量使用。我正在寻找的是,当所述Provider被卸载时,所有它的对应部分都可能是弱可达的等等。这背后的原因是说Provider提供了一个特定的处理程序,如果提供者已经消失,这意味着不再需要处理程序,应该删除它。

我在坚果shell中的要求是:另一个对象提供的对象被“删除”的最佳方式是什么(设置为删除/弱可达/ GC “D)?

我已阅读过强,弱,弱和虚幻的参考资料。软/弱引用看起来不错,虽然我不太确定它们是否真的我正在寻找的东西(见上文) - 我不希望提供者随意使用GC ,但是当供应商不再在那里时,它具有GC'd等提供的内容。事件是一个选项,虽然我有兴趣知道我是否可以在不同的级别上执行它,以便开发人员不能(轻松)跳转到事件并阻止特定对象的GC(这将阻止其他对象获得GC)。

感谢您提供任何帮助/见解!

1 个答案:

答案 0 :(得分:0)

我得出的结论是,在我的特定情况下,除了普通的强引用和我已经使用的WeakHashMap集合之外,我不需要添加任何引用。