判断对象是否要回收有两种算法, 引用计数法和可达性算法。无论哪种都离不开引用,下面将介绍 Java 语言的四种引用。
众所周知,Java 语言的 JVM 垃圾回收机制,用可达性分析算法来判断堆里的对象是否正在使用。
可达性分析算法是从 GC ROOTS 开始,逐级扫描对象引用链,来筛选出不在引用链上(无用)的对象,扫面结束后,回收掉无用的对象占用的空间。
垃圾回收中,GC Roots 对象分下面2大类
(1)栈
虚拟机栈中引用的对象
本地方法栈中 JNI 引用的对象
(2)方法
方法区中类静态属性引用的对
方法区中常量引用的对象
本站资源均来自互联网,仅供研究学习,禁止违法使用和商用,产生法律纠纷本站概不负责!如果侵犯了您的权益请与我们联系!
转载请注明出处: 免费源码网-免费的源码资源网站 » 垃圾回收算法和 GC Roots 的对象
发表评论 取消回复