
JVM
钟期何遇
这个作者很懒,什么都没留下…
展开
-
深入理解JVM---内存溢出和内存泄露
jvm中的内存溢出与内存泄露 来源:https://www.cnblogs.com/sunweiye/p/10863985.html 内存溢出: 就是我们通常遇到的OutOfMemoryError异常,它俗理解就是内存不够,通常在运行大型程序时发生,当程序所需要的内存远远超出了JVM内存所承受大小,就会报出OutOfMemoryError异常(称为OOM异常)。 在我们的JVM内存区域中(可以点击...转载 2020-05-04 09:25:02 · 173 阅读 · 0 评论 -
深入理解JVM------Java内存区域
一、 JVM运行时数据区域概览 JDK1.7 JVM运行时内存区域 JDK1.8 JVM运行时内存区域 二、各区域介绍 1.程序计数器(线程私有) 是一个内存较小的区域,是线程私有的。可以看作是当前线程所执行字节码指令的行号指示器。 作用:字节码解释器就是根据这个计数器的值来选定下一条需要执行的字节码指令,分支、跳转、循环等基础功能都是依靠这个程序计数器来完成的。 是JVM规范中唯...原创 2020-05-03 17:46:18 · 166 阅读 · 0 评论 -
JVM 深入理解JVM——GC算法与内存分配策略
对象存活判定算法 1.引用计数法: (1)概念:给对象添加一个计数器,每当一个地方引用该对象时,计数器加1;当引用失效时,计数器减1;当计数器的值为0时,表明该对象不可用了! (2)优缺点: 优点:实现简单,判定效率高。 缺点:很难解决对象间循环引用的问题!(Java虚拟机没有选用引用计数法来管理内存的主要原因) 例子:/** * testGC()方法执行后,objA和objB会不会被GC呢? *...原创 2020-05-01 11:10:57 · 214 阅读 · 0 评论 -
深入理解JVM---7种垃圾收集器
新生代收集器 1.Serial收集器 (1)概念:它是采用复制算法的新生代收集器,曾经(JDK 1.3.1之前)是虚拟机新生代收集的唯一选择。它是一个单线程收集器,只会使用一个CPU或一条收集线程去完成垃圾收集工作,更重要的是它在进行垃圾收集时,必须暂停其他所有的工作线程,直至Serial收集器收集结束为止(“Stop The World”)。 (2)运行过程: (3)优缺点: 缺点:导致STW...原创 2020-04-30 09:36:30 · 168 阅读 · 0 评论