随笔分类 -  JVM

jvm系统学习笔记总结
JVM垃圾收集器CMS和G1
摘要:CMS(Concurrent Mark Sweep)收集器是一种以获取 最短回收停顿时间 为目标的收集器。采用的是"标记-清除算法",整个过程分为4步 由于整个过程中,并发标记和并发清除,收集器线程可以与用户线程一起工作,所以总体上来说,CMS收集器的内存回收过程是与用户线程一起并发地执行的。集器 阅读全文

posted @ 2019-12-18 13:59 冰龙之剑 阅读(895) 评论(0) 推荐(0)

JVM模拟对栈溢出
摘要:堆内存溢出: 1)先设置一下堆内存大小,我这里设置为2M 2)看代码: public class HeapOverflow { static List<Person> list = new ArrayList<>(); public static void main(String[] args)th 阅读全文

posted @ 2019-12-13 16:44 冰龙之剑 阅读(316) 评论(0) 推荐(0)

JVM作业
摘要:01-简述JDK,JRE,JVM之间的关系(最好结合官网的原话) 直观上看: JDK包含了JRE,JRE包含了JVM。官网解释说JDK是JRE的超集,它包含了JRE所有的内容,而JRE包含了一些类库,Java环境运行所需要的JVM,换句话说就是包含了代码运行的一个环境的支撑。 三者具体说明 JDK: 阅读全文

posted @ 2019-12-13 15:46 冰龙之剑 阅读(153) 评论(0) 推荐(0)

JVM前奏篇(大局观)
摘要:话不多说直接上干货,先来看oracle官网中是怎么描述JDK的:https://docs.oracle.com/javase/8/docs/index.html 这是官网中JDK、JRE、JVM的一个关系图 看了这张图我们要学什么呢? 以前我们在用java开发代码的时候只知道把JDK下载下来然后进行 阅读全文

posted @ 2019-12-11 11:27 冰龙之剑 阅读(221) 评论(0) 推荐(0)

jvm垃圾回收机制
摘要:先看看下面的一个图片,看完再谈算法: 垃圾回收机制主要是回收堆内存 堆内存又分为四个区域:eden、s0、s1、老年代(前面三个称为新生代),垃圾回收主要回收新生代,因为频繁new出来的对象会慢慢重新生代转移到老年代,老年代很少会被回收。 在理解垃圾回收机制算法之前必须先了解什么是根搜索算法,不然就 阅读全文

posted @ 2019-08-04 20:43 冰龙之剑 阅读(221) 评论(1) 推荐(0)

java内存模型和内存结构
摘要:java内存模型说的是多线程,网上可能会有写误导,并不是什么堆、栈、方法区,很多人都会搞混。说白了就是多线程中主线程和本地线程之间的一个数据可见性问题。 jmm:java内存模型;jvm:java内存结构 先看看多线程特性: 1、原子性:保证数据一致性和安全性 2、可见性:保证主线程中的共享变量进行 阅读全文

posted @ 2019-08-04 10:38 冰龙之剑 阅读(702) 评论(0) 推荐(0)

导航