随笔分类 -  JVM

摘要:Young GC的触发时机 Young GC其实一般就是在新生代的Eden区域满了之后就会触发,采用复制算法来回收新生代的垃圾 Old GC和Full GC的触发时机 下面几种情况: (1)发生Young GC之前进行检查,如果“老年代可用的连续内存空间” < “新生代历次Young GC后升入老年 阅读全文
posted @ 2021-09-29 20:39 星晕留谁 阅读(799) 评论(0) 推荐(0)
摘要:年轻代 1. 复制算法的背景引入 针对新生代的垃圾回收算法,他叫做复制算法 简单来说,就是如下图所示,首先把新生代的内存分为两块。 接着假设有如下代码,在“loadReplicasFromDisk()”方法中创建了对象,此时对象就就会分配在新生代其中一块内存空间里。而且是由“main线程”的栈内存中 阅读全文
posted @ 2021-09-27 21:21 星晕留谁 阅读(809) 评论(0) 推荐(0)
摘要:JVM核心参数 -Xms:Java堆内存的大小 -Xmx:Java堆内存的最大大小 -Xmn:Java堆内存中的新生代大小,扣除新生代剩下的就是老年代的内存大小了 -XX:PermSize:永久代大小 -XX:MaxPermSize:永久代最大大小 -Xss:每个线程的栈内存大小 --Xms和-Xm 阅读全文
posted @ 2021-09-26 07:47 星晕留谁 阅读(72) 评论(0) 推荐(0)
摘要:JVM在什么情况下会加载一个类? 其实类加载过程非常的琐碎复杂,但是对于我们平时从工作中实用的角度来说,主要是把握他的核心工作原理就可以。 一个类从加载到使用,一般会经历下面的这个过程: 加载 -> 验证 -> 准备 -> 解析 -> 初始化 -> 使用 -> 卸载 所以首先要搞明白的第一个问题,就 阅读全文
posted @ 2021-09-24 21:53 星晕留谁 阅读(90) 评论(0) 推荐(0)