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

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

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

(1)栈

虚拟机栈中引用的对象

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

(2)方法

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

方法区中常量引用的对象

相关推荐
tealcwu12 小时前
【Unity基础】实现Scroll View跟随动态内容滚动
java·unity·游戏引擎
m0_6265352012 小时前
代码分析 关于看图像是否包括损坏
java·前端·javascript
星释12 小时前
Rust 练习册 108:深入探索过程宏的奥秘
开发语言·后端·rust
李贺梖梖12 小时前
day06 二维数组、Arrays、System、HuTool、方法
java
pingzhuyan12 小时前
linux常规(shell脚本)-启动java程序-实现快捷git拉取,maven打包,nohup发布(无dockerfile版)
java·linux·git·maven·shell
小股虫12 小时前
idea编译内存溢出 java: java.lang.OutOfMemoryError: WrappedJavaFileObject[ 解决方案
java·ide·intellij-idea·idea
CoderYanger12 小时前
动态规划算法-简单多状态dp问题:11.按摩师
开发语言·算法·leetcode·职场和发展·动态规划·1024程序员节
U***746912 小时前
三大框架-Spring
java·spring·rpc
Aurorar0rua12 小时前
C Primer Plus Notes 12
c语言·开发语言
南部余额12 小时前
深度解析 Spring @Conditional:实现智能条件化配置的利器
java·后端·spring·conditional