![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
jvm原理分析
文章平均质量分 89
BHBshy
IT小白
展开
-
第二章 垃圾收集器与内存分配策略
2.1 判断对象已经死亡的两种方式 2.1.1 引用计数法 概念:每一个对象都有一个计数器,当被一个引用指向的时候就把计数器加一。当一个引用失效就减一。所以说当一个对象的计数器为零的时候表示对象不在使用了。 问题:当对象出现循环引用的问题时,无法解决。 2.1.2 可达性分析算法 概念:通过一系列的“GC Roots” 的对象作为起始点,从这些节点开始向下搜索,搜索走过的路线成为引用链,当一个对象到GC Roots没有任何引用链相连,则证明此对象是不可用的。 GC Roots: 虚拟机栈中的引用对原创 2021-01-24 21:32:57 · 181 阅读 · 0 评论 -
第一章 Java内存区域
1.1 运行时数据区域 1.1.1 程序计数器 概念:字节码解释器工作时就是通过改变这个计数器的值来进行选取下一条需要执行的字节码指令、分支、循环、跳转、异常处理、线程恢复等基础功能。 因为Java虚拟机的多线程是通过线程轮流切换分支并分配处理器执行时间的方式来实现的,因此需要让此区域线程私有。 区别:Java内存空间中唯一一个没有规定OutMemoryError情乱的区域。 1.1.2 Java虚拟机栈 线程私有的。他的生命周期与线程相同。 设置虚拟机栈的指令:-Xss256k(K)或者-Xss1原创 2020-12-02 22:37:47 · 253 阅读 · 0 评论