為了友善找到我這裡專門做一篇部落格,建議有用到的小夥伴 直接将原位址網站加書簽
元空間的設定:
下面是起始大小設定為10M,最大的大小設定為20M
-XX:MetaspaceSize=10M
-XX:MaxMetaspaceSize=20M
列印GC詳細資訊
-XX:+PrintGCDetails
簡化的詳細資訊使用
-XX:+PrintGC
垃圾回收參數的設定
設定串行收集器。
-XX:+UseSerialGC
并行收集器(吞吐量優先)
設定為并行收集器。此配置僅對年輕代有效。年老代仍使用串行收集。
-XX:+UseParallelGC
配置并行收集器的線程數,建議配置與CPU數目相等
-XX:ParallelGCThreads=20
配置年老代垃圾收集方式為并行收集
JDK6.0開始支援對年老代并行收集
-XX:+UseParallelOldGC
設定每次年輕代垃圾回收的最長時間(機關毫秒)
-XX:MaxGCPauseMillis=100
自動調整年輕代Eden區大小和Survivor區大小的比例
-XX:+UseAdaptiveSizePolicy
設定年老代為并發收集
-XX:+UseConcMarkSweepGC
設定年輕代為并發收集。可與CMS收集同時使用
-XX:+UseParNewGC
設定第幾次fullgc進行整理記憶體碎片
打開記憶體空間的壓縮和整理,在Full GC後執行。會影響性能,但可以消除記憶體碎片。
-XX:+UseCMSCompactAtFullCollection
設定為增量收集模式。一般适用于單CPU情況。
-XX:+CMSIncrementalMode
設定cms收集垃圾的時機, Old區使用比例
,這裡的70表示old區使用了70%則進行回收
Old區使用比例
-XX:CMSInitiatingOccupancyFraction=70
讓年輕代GC優于Full GC執行。
-XX:+ScavengeBeforeFullGC
不響應 System.gc() 代碼。
-XX:-DisableExplicitGC
啟用本地線程優先級API。即使 java.lang.Thread.setPriority() 生效,不啟用則無效。
-XX:+UseThreadPriorities
軟引用對象在最後一次被通路後能存活0毫秒(JVM預設為1000毫秒)。
-XX:SoftRefLRUPolicyMSPerMB=0
允許90%的Survivor區被占用(JVM預設為50%)。提高對于Survivor區的使用率。
-XX:TargetSurvivorRatio=90