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

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

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

(1)栈

虚拟机栈中引用的对象

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

(2)方法

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

方法区中常量引用的对象

相关推荐
不会C语言的男孩1 分钟前
C++ Primer 第18章:用于大型程序的工具
开发语言·c++
摇滚侠4 分钟前
Spring 零基础入门到进阶 入门 06-10
java·spring·intellij-idea
要开心吖ZSH7 分钟前
AI医疗分诊与健康咨询助手agent开发——(1)从零搭建SpringBoot与AI对话系统:后端骨架 + 前端对话页 + SSE流式输出
java·ai·agent·健康医疗
星恒随风7 分钟前
C++ 类和对象入门(三):拷贝构造、赋值运算符重载和深浅拷贝
开发语言·c++·笔记·学习
RickyWasYoung8 分钟前
【Matlab】科研绘图配色-极简版
开发语言·matlab
biubiubiu07068 分钟前
SpringBoot生产级日志配置
java·spring boot·后端
凡人叶枫10 分钟前
Effective C++ 条款03:尽可能使用 const
linux·开发语言·c++·嵌入式开发
光影62715 分钟前
Python接口自动化测试----Requests库基础入门
开发语言·python·测试工具·pycharm·自动化
程序媛_15 分钟前
【Python】连接PostgreSQL获取手机验证码
开发语言·python·postgresql
ch.ju18 分钟前
Java Programming Chapter 4——Inherited call
java·开发语言