GC Root
来源:互联网 发布:u盘数据恢复免费 编辑:程序博客网 时间:2024/06/15 22:51
常说的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持有"的了。
以下是一张由Java Profiler的标示出哪些是GC roots的示例图:
![](http://www.yourkit.com/docs/80/help/gc_roots_in_explorer.gif)
译自:http://www.yourkit.com/docs/80/help/gc_roots.jsp
转自:http://blog.csdn.net/fenglibing/article/details/8928927
0 0
- GC Root
- GC Root
- GC Root
- GC Root
- GC Root
- GC root
- GC Root的对象
- GC Root 对象有哪些
- 关于JVM 中的GC Root
- GC ROOT的真实含义
- [Java JVM] Hotspot GC研究- 什么是GC Root
- Retained Heap、Shallow Heap、GC Root
- 可作为GC Root的对象
- 梳理一下JVM GC Root对象有哪些
- Java内存分配机制 垃圾回收 GC Root
- jvm什么时候回收垃圾对象---引用计数和GC root
- Java中可作为gc root 的对象有哪些?
- gc()
- hdu 5063 Operation the Sequence(模拟)
- 如何使用GCD
- 走进大学殿堂 开启大学时光
- JavaScript学习笔记:prompt提问对话框
- BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第9章节--客户端对象模型和REST APIs概览 托管代码(.NET)
- GC Root
- ZipArchive压缩和解压缩文件
- poj 2482 Stars in Your Window(扫描线)
- BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第9章节--客户端对象模型和REST APIs概览 JavaScript
- C++设计模式之简单工厂模式
- Linux定时器Crontab用法
- 以Windows服务方式启动MySQL,并将其默认编码设置为UTF-8
- PLSQL:用exit代替continue
- 套接口学习(一)实现