- -Xms:堆最小(初始)内存分配
- -Xmx:堆最大内存分配
- -XX:+/-UseTLAB :虚拟机是否使用TLAB(Thread Local Allocation Buffer 本地线程分配缓冲)
- -Xmn:堆内新生代的大小
- -Xss:栈大小
- -XX:PermSize:方法区内存大小
- -XX:MaxPermSize:方法区最大内存
- -XX:MaxDirectMemorySize:直接内存容量
- -Xnoclassgc:是否对方法区内存进行回收
- -verbose:class:显示类加载的情况
- -XX:+TraceClassLoading:查看类的加载信息
- -XX:+TraceClassUnLoading:查看类的卸载信息
GC相关
--XX:+UseSerialGC:使用Serial+Serial Old的收集器组合对内存进行回收
--XX:+UseParNewGC:使用ParNew+Serial Old的收集器组合对内存进行回收
--XX:+UseConcMarkSweepGC:使用ParNew+CMS+Serial Old的收集器组合对内存进行回收。Serial Old收集器作为CMS收集器出现Concurrent Mode Failure失败后的备用收集器使用
--XX:+UseParallelGC:使用Parallel Scavenge+Serial Old的收集器组合对内存进行回收
--XX:+UseParallelOldGC:使用Parallel Scavenge+Parallel Old的收集器组合对内存进行回收
-–XX:SurvivorRatio:新生代中Eden与Survivor区域的容量比值,默认为8,代表Eden:Survivor=8:1
--XX:XX:PretenureSizeThreshold:直接晋升到老年代对象的大小
--XX:MaxTenuringThreshold:晋升到老年代对象的年龄
--XX:+UseAdaptiveSizePolicy:动态调整Java堆中各个区域的大小以及进入老年代的年龄
--XX:HandlePromotionFailure:是否允许分配担保失败
--XX:ParallelGCThreads:并行GC时进行内存回收的线程数
-**-XX:GCTimeRatio:**GC时间占总时间的比率,仅在使用Parallel Scavengen收集器时生效
-**-XX:MaxGCPauseMillis:**GC最大停顿时间,仅在使用Parallel Scavengen收集器时生效
-**-XX:CMSInitiatingOccupancyFraction:**CMS收集器在老年代空间被使用多少后触发垃圾收集
-**-XX:+UseCMSCompactAtFullCollection:**CMS收集器在完成垃圾收集后是否要进行一次内存碎片整理,仅在使用CMS垃圾收集器时生效
-**-XX:CMSFullGCsBeForeCompaction:**CMS收集器在进行若干次垃圾收集器后再启动一次内存脆片整理,仅在使用CMS垃圾收集器时生效
内存泄漏:无法回收对象,导致空间不足,而造成新建对象没有足够空间
内存溢出:虚拟机总的空间不足,无法为所有对象分配到足够的内存空间