JVM參數之-XX:SurvivorRatio
最近面試過程中遇到一些問JVM參數的,本着沒用過去學習的辦法看了些博客寫得不准確,參考oracle的文檔記錄一下,爭取每天記錄一點知識點
-
-XX:SurvivorRatio=6 ,設置的是Eden區與每一個Survivor區的比值,可以反推出占新生代的比值,Eden為6, 兩個Survivor為2, Eden占新生代的3/4, 每個Survivor占1/8,兩個占1/4
原文:
Survivor Ratio Sizing
The
SurvivorRatio
parameter controls the size of the two survivor spaces. For example,-XX:SurvivorRatio=6
sets the ratio between each survivor space and eden to be 1:6, each survivor space will be one eighth of the young generation. The default for Solaris is 32. If survivor spaces are too small, copying collection overflows directly into the old generation. If survivor spaces are too large, they will be empty. At each GC, the JVM determines the number of times an object can be copied before it is tenured, called the tenure threshold. This threshold is chosen to keep the survivor space half full.Use the option
-XX:+PrintTenuringDistribution
to show the threshold and ages of the objects in the new generation. It is useful for observing the lifetime distribution of an application.出處:https://docs.oracle.com/cd/E19159-01/819-3681/abeil/index.html