JVM常用基础参数SurvivorRatio详解

SurvivorRatio作用讲解

Java堆从GC的角度, 可以分为 新生代和老年代。
新生代中可以分为伊甸园区(Eden区),From Survivor 区 (S0区)和 To Survivor 区 (S1区)。 占用的空间分别默认为 8:1:1

具体的内容可以看下图

一般默认用 8:1:1的比例, 而SurvivorRatio就是用于调整这个比例的。

SurvivorRatio代码实战

使用如下的测试代码,

public class MyHelloGc {

    public static void main(String[] args) throws InterruptedException {
        System.out.println("***************HELLO GC");

    }
}

项目启动时, 配置如下的jvm初始参数
-Xms10m -Xmx10m -XX:+PrintGCDetails -XX:+UseSerialGC

运行程序后, 控制台打印如下, 可以看到eden区分配2752k, From 区 320k , to 区 320k .比例为8:1:1

-XX:SurvivorRatio 的值默认为8 , 如下的jvm参数调整为4 即 -XX:SurvivorRatio=4 ,
-Xms10m -Xmx10m -XX:+PrintGCDetails -XX:+UseSerialGC -XX:SurvivorRatio=4

再次运行程序, 可以看到控制台打印. eden区分配2368k, From 区512k , to 区 512k .比例为4:1:1

  • 2
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值