java– 不朽对象真的存在吗?

java– 不朽对象真的存在吗?,第1张

概述在本文中:Xamarin–UseWeakReferencestoPreventImmortalObjects它说如果两个对象强相互引用,它们将变为imortal,这意味着GC无法收集它们,即使应用程序不再使用这些对象.但是,在这两个SO讨论中:GarbagecollectorandcircularreferenceCircularReferencesCauseMemory

在本文中:Xamarin – Use Weak References to Prevent Immortal Objects
它说如果两个对象强相互引用,它们将变为imortal,这意味着GC无法收集它们,即使应用程序不再使用这些对象.

但是,在这两个SO讨论中:

Garbage collector and circular reference

Circular References Cause Memory Leak?

似乎循环引用可以由GC处理,只要应用程序不再使用这些对象即可.

我是否误解了什么? Java的GC在AndroID上的表现有所不同吗?我真的很困惑.
任何评论都是适用的.谢谢!

解决方法:

我不确定你的问题是什么语言或环境,但在Java中,没有你所描述的那种“不朽的对象”. Java垃圾收集不基于引用计数:它基于来自根的可达性.由于您的两个对象未被应用程序中的任何其他对象引用,因此它们有资格进行垃圾回收.

总结

以上是内存溢出为你收集整理的java – 不朽对象真的存在吗?全部内容,希望文章能够帮你解决java – 不朽对象真的存在吗?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/1119435.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-29
下一篇2022-05-29

发表评论

登录后才能评论

评论列表(0条)

    保存