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

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

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

(1)栈

虚拟机栈中引用的对象

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

(2)方法

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

方法区中常量引用的对象

相关推荐
学习使得吾快乐3 小时前
时序数据库 TDengine 在设备监测中的实际落地:从传感器上报到实时看板
java·时序数据库·tdenginne
geats人山人海3 小时前
c# 第九章 record
开发语言·c#
早期的虫儿有鸟吃3 小时前
vue2--Vuex 模块化
开发语言·前端·javascript
程序员清风3 小时前
推荐几个我常听的AI播客!
java·后端·面试
唐青枫4 小时前
Java Gradle 实战指南:从 Wrapper、Kotlin DSL 到 Spring Boot 多模块构建
java·kotlin·gradle
浪客川4 小时前
Android的SystemUI的启动流程简析
android·开发语言
wuqingshun3141594 小时前
如何理解Spring Boot中的starter?
java·spring boot·后端
带刺的坐椅4 小时前
Solon TeamAgent 协作协议:从 SEQUENTIAL 流水线到 HIERARCHICAL 主管团队
java·ai·llm·agent·solon
wuqingshun3141594 小时前
SpringBoot是如何实现自动配置的
java·spring boot·后端
用户053704031434 小时前
我的学习记录泛型
java