`
85977328
  • 浏览: 1871085 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JVM内存分析系列(六)对象存活判断

 
阅读更多
对象存活常用2种算法

引用计数算法
    给对象中添加一个引用计数器,每当有一个地方引用他时,计数器值就加1;当引用失效时,计数器值就减1;任何时刻计数器都为0的对象,就是不可能在被引用的。
    但是它很难解决对象之间互相循环引用的问题。


根搜索算法
    通过一系列名为“GC Roots”的对象作为起始点,从这些节点开始向下搜索,搜索所用走过的路径成为引用链(Reference Chain),当一个对象到GC Roots没有任何引用链相连时,则证明次对象是不可用的。
在JAVA里,GC Roots对象包括下面几种:
虚拟机栈中的引用对象
方法区中的类静态属性引用对象
方法区中常量引用的对象
本地方法栈中JNI的引用对象
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics