美文网首页Android知识Android开发经验谈Android开发
深入JVM:(六)常用JVM配置参数

深入JVM:(六)常用JVM配置参数

作者: 小村医 | 来源:发表于2019-02-09 13:06 被阅读10次

    一、Trace跟踪参数

    -verbose:gc:输出虚拟机中GC的详细情况
    -XX:+PrintGC:与 -verbose:gc 是一样的,可以认为-verbose:gc 是 -XX:+PrintGC的别名
    -XX:+PrintGCDetails: 打印GC详细信息

    PrintGCDetails.png
    -XX:+PrintGCTimeStamps:打印GC时间戳
    -XX:+TraceClassLoading:监控类的加载
    TraceClassLoading.png

    二、堆分配参数

    -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
    -XX:+HeapDumpOnOutOfMemoryError:OOM时导出堆到文件
    -XX:+HeapDumpPath:导出OOM的路径
    -Xmx20m -Xms5m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=d:/a.dump

    三、永久区分配参数

    -XX:PermSize -XX:MaxPermSize:设置永久区的初始空间和最大空间

    三、栈分配参数

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

    相关文章

      网友评论

        本文标题:深入JVM:(六)常用JVM配置参数

        本文链接:https://www.haomeiwen.com/subject/zsgasqtx.html