![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JVM
Real-PSG
010101
展开
-
JVM-程序计数器
JVM概述 JVM在JAVA程序运行过程中,会将它所管理的内存划分为若干个不同的数据区域,在JVM启动时创建,或者随着线程的启动和结束来建立和销毁。 上图展示的是根据JAVASE7规范,在JDK8版本中,方法区被移除,取而代之的是metaspace(元数据空间) 程序计数器 程序技术器是一个记录当前线程所执行字节码的型号指示器。 ja...原创 2019-07-09 15:00:52 · 162 阅读 · 0 评论 -
JVM-运行时数据区域
1.虚拟机栈与本地方法栈 虚拟机栈是线程私有的,生命周期和线程相同。 虚拟机栈是描述的java方法执行的内存模型:每个方法在执行的同时都会创建一个栈桢用于存储局部变量表、操作数栈、动态链接、方法出口。一个方法的调用执行过程,对应一个栈桢在虚拟机栈中入栈到出栈的过程。 “堆内存”和”栈内存”中的”栈”就是指虚拟机栈,准确就是虚拟机栈中局部变量表,存放一个方法的所有局部变量。 虚拟机栈是线程隔...原创 2019-07-10 14:06:26 · 86 阅读 · 0 评论 -
JVM-垃圾收集算法
1.引用技术算法 给对象添加一个引用计数器,每当有一个地方引用它时,计数器就加1,引用失效时,计数器减1,任何时刻计数器为0的对象是不可能再被引用的,但是JVM中没有选择引用计数法来管理内存,主要是很难解决对象之间相互引用的问题。 2.四种引用 强引用,类似于new Object(),强引用存在,垃圾回收器就不会回收。 软引用是用来描述一些还有用但并非必须的对象,在系统要发生内存溢出异常前...原创 2019-07-11 16:35:54 · 78 阅读 · 0 评论 -
JVM-垃圾收集器
1.Serial收集器 是一个单线程收集器,不仅仅只会使用一个CPU或一条收集线程去完成垃圾收集工作,更重要的是在它进行垃圾收集时,必须暂停其他所有的工作线程,直到收集结束。 优点: 简单高效,限定单个CPU来讲,没有线程交互的开销,自然能够获得最高的单线程效率。 2.ParNew收集器 ParNew是Serial的多线程版本,除了使用多条线程进行垃圾回收之外,其余行...原创 2019-07-12 16:43:20 · 85 阅读 · 0 评论