我只是想知道幽灵参考是什么?是不是你不需要引用一个对象?编辑:对不起,我不清楚,langauge是Java,我读了它关于链表。在阅读问题时写一个LinkedQueue迭代器来支持remove方法。然后,你会有鬼参考。
答案 0 :(得分:3)
我不确定这是否相同,但我认为你的意思可能是weak reference。
如果没有非弱引用,则在具有垃圾收集的语言中使用弱引用来引用对象,而不阻止垃圾收集删除对象。
不同的语言对此功能具有不同的语义。 Java定义了soft,weak和phantom引用,每个引用的机制略有不同。
这在许多情况下都很有用。例如,在Blackberry上,您可以定义一个侦听系统事件的侦听器对象(例如进入的调用)。当您向系统注册侦听器时,它会对其进行弱引用。这样,当对该对象的所有其他引用消失时(例如当应用程序关闭时),弱引用不再指向侦听器,并且释放该侦听器的内存,而程序员不必记住取消注册它。
答案 1 :(得分:1)
我想你可能指的是PhantomReference。
答案 2 :(得分:0)
正如我在评论中所述,我不知道 ghost 引用,但this article对各种弱引用(弱,弱,和幻影)。它甚至提到ReferenceQueue
问题,但我必须说我之前没有听说过。
答案 3 :(得分:0)
GhostReference
我知道的最新概念是PhantomReference
,如果您想了解它,根据我的经验,您应该了解Strong reference
然后weak reference
然后{{ 1}}。在这些知识之后,您可能更容易理解soft reference
。
简而言之,这些参考只是帮助garbarge收藏家更正确地工作。 (这意味着有时候,你不需要知道这些概念,你的程序仍然可以在短时间内运行)