jvm哪些可以作为gc root

在Java虚拟机(JVM)中,有以下几种对象可以作为GC Root:

  1. 被虚拟机栈(Java方法栈帧中的本地变量表)中引用的对象。
  2. 被方法区中静态属性引用的对象。
  3. 被本地方法栈中JNI(Java Native Interface)引用的对象。
  4. 被虚拟机常量池引用的对象。
  5. 虚拟机内部的引用对象,如基本数据类型对应的类对象等。

这些对象被认为是GC Root,是因为它们被直接或间接地引用着,垃圾回收器从这些GC Root开始遍历,找到并标记所有与之可达的对象,而未被标记的对象就会被判定为垃圾并被回收。

相关推荐
需要82617 小时前
Arthas 一个命令排查线上问题
java·jvm·spring·spring cloud
程序员阿鹏19 小时前
简单介绍一下软引用
java·开发语言·jvm·数据结构·后端
lsylalalala2 天前
JVM(Java虚拟机)
jvm
xieliyu.2 天前
JVM 垃圾回收机制详解:从标记过程、回收算法到垃圾收集器
java·jvm·笔记·java-ee
此时不提桶,更待何时2 天前
01-04-B-垃圾回收面试与生产事故实战
java·jvm·面试
kian.wqn3 天前
【JVM核心体系02】JVM 运行时内存区域:堆、栈、元空间、直接内存一次讲清
jvm
用户094248568034 天前
第12章:JDK 诊断工具箱——jps / jstat / jmap / jcmd / jhsdb
java·jvm
程序员阿鹏4 天前
双亲委派机制
java·jvm·数据结构·后端
用户094248568034 天前
第11章:OpenJDK反射、动态代理与 MethodHandle 初探
java·jvm