1 GC ROOT的定义

我们知道,JVM中判断一个对象是否标记为可回收的对象是根据可达性分析算法,顾名思义,可达性分析需要知道当前对象(是否需要回收的对象)的起点,而这个起点对象在当前时刻一定是存活的,才能保证对当前对象是否需要回收的判断是正确的,所以GC Root表示:当前时刻存活的对象

2 GC ROOT对象都有哪些?

先说概念:

  • 当前正在被调用的方法里局部变量引用的对象,即虚拟机栈的局部变量表中引用的对象;
  • 方法区中静态变量引用的对象;
  • 方法区中常量引用的对象;
  • 本地方法栈中Native方法引用的对象

这几个对象有个特点,分别在虚拟机栈,本地方法栈,方法区中,都没有在堆中,所以这些对象可简单记为不在虚拟机堆中的对象

什么是GC Root相关推荐

  1. 进阶学习(4.4) JVM GC Root 判定, 垃圾的判定

    要学JVM 垃圾回收机制, 必须先知道什么是GCRoots,根节点, 常见有 类静态字段 常量 静态代码块 第一栈变量, 网上没有案例说明, 都是复制粘贴的也没说清楚什么是Root 虚拟机栈 1, 先 ...

  2. 【Java 虚拟机原理】垃圾回收算法 ( 可达性分析算法 | GC Root 示例 | GC 回收前的两次标记 | finalize 方法示例 )

    文章目录 一.可达性分析算法 二.GC Root 示例 三.GC 回收前的两次标记 四.finalize 方法示例 一.可达性分析算法 在 堆内存 中 , 存在一个 根对象 GC Root , GC ...

  3. Java垃圾回收(GC)、找垃圾的方式、GC Root、GC停顿、引用、垃圾收集算法、收集器、GC日志、安全点、安全区域

    1.垃圾回收 1.1概念 在Java语言中,垃圾回收(Garbage Collection,GC)是一个非常重要的概念. 它的主要作用是回收程序中不再被使用的内存,Java提供的GC功能可以自动监测对 ...

  4. Hotspot GC Root 对应调用链

    GC Root GC Root全称是garbage collection root, 即垃圾回收的根. 回到我们的葡萄比喻上来, 也就是一串葡萄的柄. 实际上JVM中的GC Root不只一个, 也就是 ...

  5. JVM中GC Root对象有哪些?

    众所周知,我们目前最常用的虚拟机hotspot使用可达性分析来进行垃圾回收,而可达性分析需要依赖GC Root.下面我就来介绍下可以作为GC Root的对象. (一)虚拟机栈中引用的对象 虚拟机栈中的 ...

  6. 什么是GC root ,GC root原理

    1.GC root原理 GC root原理:通过对枚举GCroot对象做引用可达性分析,即从GC root对象开始,向下搜索,形成的路径称之为 引用链.如果一个对象到GC roots对象没有任何引用, ...

  7. 常见Java GC Root

    Java 进行GC的时,会从GC root进行可达性判断,常见的GC Root有: 通过System Class Loader或者Boot Class Loader加载的class对象,通过自定义类加 ...

  8. 什么是 gc root

    GC Roots原理 GC Roots基本思路就是通过一系列的称为"GC Roots"的对象作为起始点, 从这些节点开始向下搜索, 搜索所走过的路径称为引用链( Reference ...

  9. 一个JDK线程池BUG引发的GC机制思考

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 作者:空无 来源:https://urlify.cn/63QrYv ...

最新文章

  1. python 进程池 freeze_support_Python 多进程并发操作中进程池Pool的实例
  2. A potentially dangerous Request.Form value was detected from the client
  3. Poj(1703),种类并查集
  4. iPhone开发中现文件的增加 删除和查询
  5. caffe学习笔记25-过拟合原因及分析
  6. WPF游戏,使用move游戏开发
  7. 如果央行加息,以前办的房贷利息也会涨吗?
  8. Java生鲜电商平台-促销系统的架构设计与源码解析
  9. 类选择器遍历赋值_利用反射实现配置表数据到类对象数据的转换
  10. python解析接口_010 python接口 bs4解析html
  11. 记一次Jenkins 打包异常 ERROR: Exception when publishing, exception message [Failure]
  12. 蓝牙学习笔记(一)——蓝牙相关概念和术语整理(小白版)
  13. laypage分页java例子_总结laypage.js分页插件用法
  14. SECS/GEM协议开发应用
  15. ubuntu系统安装完显卡驱动出现黑屏和登录死循环的解决方法(新增惠普暗夜精灵7-3070显卡解决方法)
  16. 性能测试----测试执行
  17. C# 控件透明背景(winform)
  18. 密码学基础:群、环、域概念总结
  19. 51单片机的指令系统(一)
  20. SAP UI5 表格数据如何导出成 Excel 文件(Table Export As Excel)

热门文章

  1. 论文阅读:基于图神经网络的分类法自动更新模型
  2. ios抓包工具stream抓包教程
  3. linux 内核 xfs ail,linux 3.10内核 xfs的一次io异常导致的hung crash
  4. Arduino,单片机,树莓派,ARM开发板之间什么关系?
  5. 网络流(一)最大流问题EdmondsKarp和最小费用最大流
  6. el-col :xs是什么意思
  7. base64转html文件,图片转换成Base64编码集成到html文件
  8. 数据结构:链表(Linked Lists)
  9. 【AdaSeq基础】30+NER数据汇总,涉及多行业、多模态命名实体识别数据集收集
  10. 达梦数据库常用图形化工具介绍