![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java虚拟机
Double____C
这个作者很懒,什么都没留下…
展开
-
深入理解Java虚拟机--垃圾回收机制
一、需要垃圾回收的内存地区 1.1 不要考虑的区域 Java运行时的内存区域,其中程序计数器、虚拟机栈、本地方法栈3个区域是随线程而生,随线程而灭:栈中的栈帧随着方法的进入和退出有条不紊的执行者出栈和入栈操作。每个栈帧中分配多少内存基本上是在类结构确定下来时就已知的。因此这几个区域的内存分配和回收都具备确定性。所以不需要过多考虑回收问题。 1.2 需要考虑的区域 Java堆和方法区则不一样,一个接...原创 2019-09-10 19:55:56 · 208 阅读 · 0 评论 -
深入理解JVM虚拟机--Java内存区域
一、数据区域 Java虚拟机在执行Java程序的过程中会把他管理的内存划分为若干个不同的数据区域。如下如所示: 1.1 程序计数器 程序计数器是一块较小的内存空间,它可以看做是当前线程所执行的字节码的行号指示器。 唯一一个没有规定任何OutOfMemoryError情况的区域 是块较小的内存空间,可以看做是当前线程所执行的字节码的行号指示器。在虚拟机的概念模型里,字节码解释器工作时就是通过改变这...原创 2019-09-10 21:35:25 · 170 阅读 · 0 评论 -
深入理解Java虚拟机--类加载机制
一、类加载的时机 类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载、验证、准备、解析、初始化、使用和卸载7个阶段。 其中验证、准备、解析3个阶段统称为连接 其中,加载、验证、准备、初始化和卸载这5个阶段的顺序是确定的,类的加载过程必须按照这种顺序按部就班地开始,而解析阶段则不一定:它在某些情况下可以在初始化阶段以后再开始,这是为了支持java语言的运行时绑定(也称为动态...原创 2019-09-11 18:06:34 · 136 阅读 · 0 评论