
JVM
文章平均质量分 52
JVM
yeye19891224
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
CMS垃圾回收
1.7中存在永久代,1.8中没有永久代,替换它的是元空间,元空间所占的内存不是在虚拟机内部,⽽是本地内存空间,这么做的原因是,不管是永久代还是元空间,他们都是⽅法区的具体实现,之所以元空间所占的内存改成本地内存,官⽅的说法是为了和JRockit统⼀,不过额外还有⼀些原因,⽐如⽅法区所存储的类信息通常是⽐较难确定的,所以对于⽅法区的⼤⼩是⽐较难指定的,太⼩了容易出现⽅法区溢出,太⼤了⼜会占⽤了太多虚拟机的内存空间,⽽转移到本地内存后则不会影响虚拟机所占⽤的内存。所有新生成的对象首先都是放在年轻代的。原创 2025-03-24 09:27:20 · 491 阅读 · 0 评论 -
G1垃圾回收
在进行MixedGC过程中,采用的复制算法,如果复制过程中内存不够,则会触发FuIGC,会STW,并采用单线程来进行标记-整理算法进行GC,相当于用一次SerialGC。老年代的占用率达到了-XX:InitiatingHeapOccupancyPercent指定的百分比,回收所有的新生代以及部分老年代,以及大对象区。Eden区满,就会触发G1的YoungGC,对Eden区进行GC。原创 2025-03-21 15:52:47 · 396 阅读 · 0 评论 -
垃圾回收算法
指定老年代使用ParallelOld GC,这两个配置一个,另一个自动激活。,指定使用Serial GC和Serial Old GC。,指定新生代使用Parallel GC,,指定新生代使用ParNew GC,工作线程暂停,一个线程进行垃圾回收。工作线程暂停,一个线程进行垃圾回收。工作线程暂停,多个线程进行垃圾回收。工作线程暂停,多个线程进行垃圾回收。工作线程暂停,多个线程进行垃圾回收。用户线程和垃圾回收线程同时执行。用户线程和垃圾回收线程同时执行。用户线程和垃圾回收线程同时执行。原创 2025-03-21 15:52:11 · 359 阅读 · 0 评论 -
JVM参数调优
如果设置为0的话,则年轻代对象不经过Survivor区,直接进入年老代,对于年老代比较多的应用,这样做可以提高效率。如果将此值设置为一个较大值,则年轻代对象会在Survivor区进行多次复制,这样可以增加对象在年轻代存活时间,增加对象在年轻代即被回收的概率。: 设置堆内存年轻代中Eden区与Survivor区大小的比值。设置为4,则两个Survivor区(JVM堆内存年轻代中默认有2个Survivor区)与一个Eden区的比值为2:4,一个Survivor区占 整个年轻代的1/6。原创 2025-03-21 15:51:35 · 165 阅读 · 0 评论