Java学习笔记(五)-JVM系列

**

JVM的参数

-Xms:设置初始堆大小
-Xmx:设置最大堆大小
-Xss:设置每个线程堆栈大小
-XX:NewSize=n:设置年轻代大小
-XX:NewRatio=n:设置年老代和年轻代的比值。
-XX:SurvivorRatio=n:年轻代中Eden区与两个Survivor区的比值。默认情况下年轻代按照8:2的比例来分配
-XX:MaxPermSize=n:-XXPermSize=n 设置持久代大小
-XX:MaxTenuringThreshold=20 设置对象复制次数
-XX:CMSInitiatingOccupancyFraction=80设置gc开始的阈值
-XX:+UseCMSInitiatingOccupancyOnly设置是否根据设定值开始gc若不加上面的参数只会起效一次后续自动调整
-XX:+UseSerialGC:设置串行收集器
-XX:+UseParallelGC:设置并行收集器
-XX:+UseParalledlOldGC:设置并行年老代收集器
-XX:+UseConcMarkSweepGC:设置并发收集器

**
**

JVM的内存结构

JVM内存结构主要有三大块:堆内存、方法区和栈。
其中堆内存是JVM中最大的一块由年轻代和老年代组成,
而年轻代内存又被分成三部分,Eden空间、From Survivor空间、To Survivor空间在Survivor空间中相同年龄所有对象大小的总和大于Survivor空间的一半, 年龄大于或等于该年龄的对象就可以直接进入老年代。
方法区存储类信息、常量、静态变量等数据,线程共享
栈又分为java虚拟机栈和本地方法栈主要用于方法的执行。线程私有

**

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章