java - 对同一个对象的多个弱引用是否分组清除?

标签 java weak-references

如果我有多个弱引用指向同一个对象,并且周围没有强引用。当其中一个返回对象时,我可以确定两个弱引用都完好无损吗?

最佳答案

WeakReference wr1 = new WeakReference(objX);
...//somewhere else
WeakReference wr2 = new WeakReference(objX);

现在:

  1. 如果此时 wr1.get() 返回非空值,那么 wr2.get() 也将返回非空值。
  2. 但是 wr1 和 wr2 对象本身是独立的 gc-ed,它们的 gs-paths 相互独立,最重要的是独立于 objX。

关于java - 对同一个对象的多个弱引用是否分组清除?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6383466/

相关文章:

java - getContentLength() 是否下载整个文件?

java - 新的dll "sunec.dll"文件和JAVA7有什么用

ios - 两个类之间的弱变量和指针问题

c# - 为什么C#中事件的实现默认不使用弱事件模式?

objective-c - 为什么我不在传递给 dispatch_after() 的 block 中使用指向自身的弱指针?

java - getElementsByTagName 向下搜索所有级别的 XML 节点

java - Android:创建 findViewById 的较短版本 - 未经检查的强制转换

java - 在java中将英语翻译成本地语言

Xamarin 垃圾收集器和循环引用

ios - 以下swift代码是什么意思?