zoukankan      html  css  js  c++  java
  • JVM虚拟机参数

    追踪参数:

      打印GC简要信息    -XX:+PrintGC
      打印GC详细信息    -XX:+PrintGCDetails
      打印CG发生的时间戳  -XX:+PrintGCTimeStamps
      指定GC log的位置   -Xloggc:log/gc.log
      打印类的加载情况    -XX:+TraceClassLoading

    堆参数:
      -Xmx  最大堆
      -Xms  最小堆
      -Xmn  新生代大小
      -XX:NewRatio
        新生代(eden+2*s)和老年代(不包含永久区)的比值
        4 表示 新生代:老年代=1:4,即年轻代占堆的1/5
      -XX:SurvivorRatio
        设置两个Survivor区和eden的比
        8表示 两个Survivor :eden=2:8,即一个Survivor占年轻代的1/10

    -Xmx20m -Xms5m  运行代码
    public static void main(String[] args){
        System.out.print("Xmx=");
        System.out.println(Runtime.getRuntime().maxMemory()/1024.0/1024+"M");
    
        System.out.print("free mem=");
        System.out.println(Runtime.getRuntime().freeMemory()/1024.0/1024+"M");
    
        System.out.print("total mem=");
        System.out.println(Runtime.getRuntime().totalMemory()/1024.0/1024+"M");
    }
    
    Xmx=18.0M
    free mem=4.8178863525390625M
    total mem=5.5M

      

      -XX:+HeapDumpOnOutOfMemoryError  OOM时导出堆到文件
      -XX:+HeapDumpPath            导出OOM的路径
      -XX:OnOutOfMemoryError         在OOM时,执行一个脚本

    -Xmx20m -Xms5m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=d:/a.dump
        Vector v=new Vector();
        for(int i=0;i<25;i++)
           v.add(new byte[1*1024*1024]);

    永久区参数:
      -XX:PermSize -XX:MaxPermSize
        设置永久区的初始空间和最大空间
        他们表示,一个系统可以容纳多少个类型


    栈参数:
      -Xss
        通常只有几百K
        决定了函数调用的深度
        每个线程都有独立的栈空间
        局部变量、参数 分配在栈上

  • 相关阅读:
    mysql 取出每科成绩前两名
    mysql 数据库以及sql 的优化
    Twitter开源分布式自增ID算法snowflake
    SVN 冲突
    VUE 入门 1 列表、if判断 、双向绑定
    Roadblock
    最大子序和
    SOLDIERS
    绿豆蛙的归宿
    Place the Robots
  • 原文地址:https://www.cnblogs.com/413xiaol/p/6920421.html
Copyright © 2011-2022 走看看