博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
什么是GC Roots
阅读量:4658 次
发布时间:2019-06-09

本文共 666 字,大约阅读时间需要 2 分钟。

GC Root

2012年11月28日  ⁄ 综合 ⁄ 共 625字 ⁄ 字号  小  中  大  ⁄ 评论关闭
 

常说的GC(Garbage Collector) roots,特指的是垃圾收集器(Garbage Collector)的对象,GC会收集那些不是GC roots且没有被GC roots引用的对象。

一个对象可以属于多个root,GC root有几下种:

  • Class - 由系统类加载器(system class loader)加载的对象,这些类是不能够被回收的,他们可以以静态字段的方式保存持有其它对象。我们需要注意的一点就是,通过用户自定义的类加载器加载的类,除非相应的java.lang.Class实例以其它的某种(或多种)方式成为roots,否则它们并不是roots,.
  • Thread - 活着的线程
  • Stack Local - Java方法的local变量或参数
  • JNI Local - JNI方法的local变量或参数
  • JNI Global - 全局JNI引用
  • Monitor Used - 用于同步的监控对象
  • Held by JVM - 用于JVM特殊目的由GC保留的对象,但实际上这个与JVM的实现是有关的。可能已知的一些类型是:系统类加载器、一些JVM知道的重要的异常类、一些用于处理异常的预分配对象以及一些自定义的类加载器等。然而,JVM并没有为这些对象提供其它的信息,因此需要去确定哪些是属于"JVM持有"的了。

转载于:https://www.cnblogs.com/kabi/p/6531375.html

你可能感兴趣的文章
Best Time to Buy and Sell Stock II
查看>>
函数参数按值传递
查看>>
前端微应用:前端大应用拆分为多个小应用(?前端 nginx?)
查看>>
Codeforces Round #574 (Div. 2)
查看>>
洛谷上传数据指南
查看>>
搜索进阶课件,视频,代码(状态压缩搜索,折半搜索,dfs,bfs总结)
查看>>
第一类和第二类Stirling数
查看>>
造题目数据的觅食指南
查看>>
银联高校极客挑战赛 初赛 第一场
查看>>
2019银联高校极客挑战赛 复赛
查看>>
银联高校极客挑战赛 初赛 第二场
查看>>
windows更改文件打开方式
查看>>
windows10 注销 锁定
查看>>
下载文件的文件名之思考
查看>>
微信分享链接时怎样才能带上带缩略图和简介
查看>>
2019 年百度之星·程序设计大赛 - 复赛
查看>>
添加其它邮箱
查看>>
Fiji-imageJ 无法打开
查看>>
excel acm 高校排名(hdoj)
查看>>
给从论文复制的文本设置正确的格式(可设置快捷键)
查看>>