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

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

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

(1)栈

虚拟机栈中引用的对象

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

(2)方法

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

方法区中常量引用的对象

相关推荐
一脸dio样7543 分钟前
第5章 保护模式进阶,向内核迈进
linux·开发语言
云烟成雨TD4 分钟前
Spring AI Alibaba 1.x 系列【40】多智能体核心模式 - 智能体作为工具(Agent as Tool)
java·人工智能·spring
小叮当⇔13 分钟前
M4A 转 MP3 桌面转换器(PyQt5 + FFmpeg)
开发语言·qt·ffmpeg
z44247532613 分钟前
新买的电脑装哪个HTML函数工具最匹配_开箱即用教程【教程】
jvm·数据库·python
测试员周周16 分钟前
【踩坑系列3】飞书机器人集体“失联“?3 个 Gateway 进程让我差点崩溃!一个测试老兵的排查实录
java·python
aq553560017 分钟前
Laravel9.x新特性全解析
java·开发语言·数据库
m0_7349497920 分钟前
如何结合计划任务实现自动定时备份任务配置_全自动化运维管理
jvm·数据库·python
亦暖筑序21 分钟前
AI 客服系统升级实战:多 Agent 路由 + 多轮记忆 + 敏感词过滤
java·后端
珹洺25 分钟前
C++AI多模型聊天系统(三)AI多模型(豆包/Kimi/千问)接入与实现
开发语言·c++·人工智能
zhangzeyuaaa29 分钟前
深入理解 Python GIL:从机制到释放时机
java·网络·python