JVM
千与千寻丶
这个作者很懒,什么都没留下…
展开
-
JVM之虚拟机类加载机制
JVM之虚拟机类加载机制概述虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。类加载的时机类从被加载到虚拟机内存中开始,到卸载出内存,它包含了以下七个生命周期:加载、验证、准备、解析、初始化、使用和卸载。(验证、准备和解析三部分统称为连接)加载、验证、准备、初始化和卸载这五个阶段的顺序都是确定的,类的加载必须按照这种顺序按部就班地开始,而解析阶段则不一定:它可以在初始化阶段之后在开始,原创 2020-07-21 14:35:31 · 217 阅读 · 0 评论 -
JVM之内存分配与回收策略
内存分配与回收策略对象优先在Eden分配大多数的情况下,对象是在新生代Eden区分配。当Eden区没有足够的空间进行分配时,虚拟机将发生一次Minor GC。public class Demo{ //-Xms20m -Xmx20m -Xmn10m -XX:SurvivorRatio=8 -XX:+PrintGCDetails //-XX:+UseSerialGC(Serial + Serial Old) public static void main(String args[]) {原创 2020-06-22 17:31:56 · 81 阅读 · 0 评论 -
JVM之垃圾收集相关参数
垃圾收集相关参数-XX:UserSerialGC虚拟机运行在Client模式下的默认值,打开此开关后,使用Serial + Serial Old的收集器组合进行内存回收-XX:UserParNewGC打开此开关后,使用ParNew + Serial Old的收集器组合进行内存回收-XX:UserConcMarkSweepGC打开此开关后,使用ParNew + CMS + Serial Old的收集器组合内存回收。Serial Old收集器将作为CMS收集器出现Concurrent Mode F原创 2020-05-20 19:46:51 · 202 阅读 · 0 评论 -
JVM之垃圾收集器
垃圾收集器Serial收集器Serial收集器是最基本、历史最悠久的收集器,曾经(JDK1.3.1之前)是虚拟机新生代收集的唯一选择。这个收集器是一个单线程收集器,但它的”单线程“的意思并不仅仅是说明它只会使用一个CPU或一条收集线程去完成垃圾收集工作,更重要的是它进行垃圾收集时,必须暂停其他所有的工作线程(Stop The World),直到它收集结束。”Stop The World“这个名字也许听起来很酷,但这项工作实际上是由虚拟机后台自动发起和自动完成的,在用户不可见的情况下把用户的正常工作原创 2020-05-20 19:08:00 · 251 阅读 · 0 评论 -
JVM之垃圾收集算法
垃圾收集算法标记-清除算法算法分为标记和清除两个阶段:首先标记出所有需要回收的对象,在标记完成后统一回收掉所有被标记的对象。它是最基础的收集算法,因为后续的收集算法都是基于这种思路并对其缺点进行改进而得到的。他主要有两个缺点:一个是效率问题,标记和清除过程的效率都不高;另外一个是空间问题,标记清楚之后会产生大量的不连续的内存碎片,空间碎片太多可能会导致,当程序以后的运行过程中需要分配较大的对象时无法找到足够的连续内存而不得不提前触发另一次垃圾回收。复制算法为了解决效率问题,一种称为“复制”原创 2020-05-20 11:06:54 · 117 阅读 · 0 评论 -
JVM之如何判断一个对象已死
如何判断一个对象已死如何判断一个对象已死?如何判断一个对象已死?堆中几乎存放着Java世界中所有的对象实例数据,垃圾收集器在对堆经行垃圾回收之前,第一件事情就是要确定这些对象有哪些还“存活”着,有哪些已经“死去”。引用计数算法给对象中添加一个引用计数器,每当有一个地方引用它时,计数器就添加1;当引用失效之后,计数器就减去1;任何时刻计数器都为0的对象就是不可能再被使用的。但是在我们Java语言中,并没有选用引用计数算法来管理内存,其中最重要的原因是他难以解决对象之间的相互循环引用的问题。原创 2020-05-18 11:47:50 · 216 阅读 · 0 评论 -
Java之JVM内存管理机制
Java内存区域与内存溢出异常运行时数据区域运行时数据区域java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的区域。这些区域都有他们各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程启动而存在,有些区域则是依赖用户线程的启动和结束而建立和销魂。如下图,Java虚拟机所管理的内存将会包括以下几个运行区域。程序计数器Java虚拟机运行时数据区是一块较小...原创 2020-05-14 14:28:10 · 282 阅读 · 1 评论