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

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

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

(1)栈

虚拟机栈中引用的对象

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

(2)方法

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

方法区中常量引用的对象

相关推荐
Java面试题总结7 小时前
Python 入门(四)- Openpyxl 操作 Excel 教程
开发语言·python·excel
Polar__Star7 小时前
jsoup如何读取html
jvm·数据库·python
devpotato7 小时前
人工智能(九)- Spring AI MCP客户端开发
java·mcp
gCode Teacher 格码致知7 小时前
Javascript提高:Math.round 详解-由Deepseek产生
开发语言·javascript
a9511416427 小时前
怎么防范通过phpMyAdmin上传WebShell_禁止into outfile权限
jvm·数据库·python
InfinteJustice7 小时前
如何统计SQL分组汇总数据_详解GROUP BY与HAVING用法
jvm·数据库·python
zhangchaoxies7 小时前
如何使用 AWS Lambda 和 Python 获取 EMR 集群的标签列表
jvm·数据库·python
吕源林7 小时前
如何处理SQL插入后的数据一致性校验_使用Checksum比对
jvm·数据库·python
疯狂打码的少年7 小时前
【Day14 Java转Python】从Java到Python——用Python重构一个Java小工具(文件批量重命名实战)
java·python·重构
广州灵眸科技有限公司8 小时前
瑞芯微(EASY EAI)RV1126B QT GUI例程方案
linux·服务器·开发语言·网络·人工智能·qt·物联网