垃圾回收算法和 GC Roots 的对象

判断对象是否要回收有两种算法, 引用计数法和可达性算法。无论哪种都离不开引用,下面将介绍 Java 语言的四种引用。
众所周知,Java 语言的 JVM 垃圾回收机制,用可达性分析算法来判断堆里的对象是否正在使用。
可达性分析算法是从 GC ROOTS 开始,逐级扫描对象引用链,来筛选出不在引用链上(无用)的对象,扫面结束后,回收掉无用的对象占用的空间。

垃圾回收中,GC Roots 对象分下面2大类

(1)栈

虚拟机栈中引用的对象

本地方法栈中 JNI 引用的对象

(2)方法

方法区中类静态属性引用的对

方法区中常量引用的对象

相关推荐
cheems952711 分钟前
[Spring MVC] 统一功能与拦截器实践总结
java·spring·mvc
不吃土豆的马铃薯33 分钟前
4.SGI STL 二级空间配置器 allocate 与_S_refill 源码解析
c语言·开发语言·c++·dreamweaver·内存池
Full Stack Developme1 小时前
Spring Boot 事务管理完整教程
java·数据库·spring boot
码界筑梦坊1 小时前
120-基于Python的食品营养特征数据可视化分析系统
开发语言·python·信息可视化·数据分析·毕业设计·echarts·fastapi
lsx2024061 小时前
《Foundation 模态框》
开发语言
城管不管1 小时前
前后端远程协作
java
青云计划1 小时前
Feed流
java·后端·spring
fufu03111 小时前
vscode配置C/C++环境,用GDB调试简单程序分享
开发语言·c++
快乐江湖2 小时前
「层层包装」—— 装饰器模式
开发语言·python·装饰器模式
java1234_小锋2 小时前
String、StringBuilder、StringBuffer的区别?
java·开发语言