GC Roots

作者: 晚歌歌 | 来源:发表于2020-01-16 10:48 被阅读0次

可达性分析算法

可达性分析算法是HOTSPOT VM采用的判断对象是否存活的算法

通过一系列称为“GC Roots”的对象作为起始点,从这些节点开始向下搜索,搜索所走过的路径称为引用链,当一个对象到GCRoots没有任何引用链相连的时候,则证明此对象是不可用的。
比如如下,右侧的对象是到GCRoot时不可达的,可以判定为可回收对象。


image.png

在java中,可以作为GCRoot的对象包括以下几种:

  • 虚拟机栈中引用的对象。
  • 方法区中静态属性引用的对象。
  • 方法区中常量引用的对象。
  • 本地方法中JNI引用的对象。

jvm优化—— 图解垃圾回收

相关文章

  • JVM - 垃圾回收器

    JVM - 垃圾回收器 Young GC 查找GC Roots,拷贝所引用的对象到to区GC ROOTS内存区域主...

  • GC Roots

    可达性分析算法 可达性分析算法是HOTSPOT VM采用的判断对象是否存活的算法 通过一系列称为“GC Roots...

  • JVM:垃圾收集器与内存分配策略(下)

    HotSpot算法实现 枚举根节点:从GC Roots节点中找出引用链的操作。GC Roots对象主要在全局性引用...

  • gc-roots-reachability-analysis-s

    savepoint, gc roots 对象是否已死?引用计数解决不了循环引用问题可达性分析(从 gc roots...

  • 23. java虚拟机总结-和OOM相关的 (六)

    垃圾回收算法 可达性分析法(根搜索算法,GC ROOTS) 从 GC Roots 向下追溯、搜索,会产生一个叫作 ...

  • G1垃圾收集器

    初始标记暂停所有其他现场(STW),标记GC Roots能直接引用的对象 并发标记从GC Roots直接引用的对象...

  • jvm<二> 内存管理

    java虚拟机回收gc roots 查找机制gc roots对象可达, 不会被释放1.虚拟机栈本地变量表引用的对象...

  • 垃圾收集器和内存分配策略

    可达性分析算法 当一个对象到GC Roots没有任何引用链(用图论的话说,就是从GC Roots节点触发到某个节点...

  • 3.常见的垃圾回收器及算法

    1.哪些变量引用不能回收 被GC Roots引用的变量不能被回收,GC Roots有方法的局部变量,类的静态变量。...

  • JVM - GC垃圾回收

    注:可达性分析法(判断对象是否存活):当一个对象到GC Roots没有任何引用链相连时。GC Roots对象:虚拟...

网友评论

      本文标题:GC Roots

      本文链接:https://www.haomeiwen.com/subject/pxkfzctx.html