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

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

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

(1)栈

虚拟机栈中引用的对象

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

(2)方法

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

方法区中常量引用的对象

相关推荐
重生之我是Java开发战士1 分钟前
【Java SE】TCP/IP协议栈:从分层架构到核心机制
java·tcp/ip·架构
CoderYanger1 分钟前
递归、搜索与回溯-综合练习:22.优美的排列
java·算法·leetcode·深度优先·1024程序员节
想做后端的前端1 分钟前
Lua基本数据类型
java·junit·lua
z***56562 分钟前
GO 快速升级Go版本
开发语言·redis·golang
张人大 Renda Zhang3 分钟前
Maven = Java 构建世界的“事实标准”:从 pom.xml 到云原生 CI/CD
xml·java·spring boot·后端·ci/cd·云原生·maven
shayudiandian3 分钟前
【Java】内部类
java
矜辰所致3 分钟前
C 语言 —— 函数指针
c语言·开发语言·指针·typedef·函数指针
老鼠只爱大米4 分钟前
Java设计模式之装饰器模式详解
java·设计模式·装饰器模式·decorator·java设计模式
0***v7774 分钟前
springboot 异步操作
java·spring boot·mybatis
LSL666_4 分钟前
7 SpringBoot pom.xml解释
java·spring boot·spring