jvm哪些可以作为gc root

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

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

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

相关推荐
驭渊的小故事13 小时前
多线程01(线程状态和线程的sleep,线程终止(Interrupt)的小关联)
java·jvm·算法
深蓝轨迹14 小时前
深入解析JVM方法区与StringTable机制
jvm·jdk·方法区·java八股
Dicky-_-zhang15 小时前
分布式锁实战:Redis与ZooKeeper对比选型与实现方案
java·jvm
深蓝轨迹16 小时前
JVM 垃圾回收器详解:Serial、Parallel、CMS 与 G1 的原理与实践
jvm·垃圾回收·gc调优
自律懒人18 小时前
阿里Qoder 1.0实测:对比Cursor和Claude Code,国产AI编程工具做到哪一步了?
jvm·深度学习·ai编程
高级c19 小时前
10分钟上手昇腾 NPU 算子开发入门与实战
java·jvm·spring
没文化的阿浩19 小时前
【Linux系统】线程的同步与互斥(1)——互斥量mutex
linux·运维·jvm
深蓝轨迹20 小时前
JVM 类加载机制详解(生命周期・双亲委派・自定义加载器)
jvm·类加载器·双亲委派
Dicky-_-zhang1 天前
分布式事务解决方案TCC实战
java·jvm