-XX的含义是什么:NewRatio和-XX:OldSize JVM标志?
我使用以下命令行启动我的Java应用程序:
java -XX:+PrintCommandLineFlags -verbose:gc -XX:+PrintGCDetails \ -XX:+UseConcMarkSweepGC -jar start.jar
JVM启用以下选项:
-XX:MaxNewSize=87244800 -XX:MaxTenuringThreshold=4 -XX:NewRatio=7 -XX:NewSize=21811200 -XX:OldPLABSize=16 -XX:OldSize=65433600 -XX:+PrintCommandLineFlags -XX:+PrintGC -XX:+PrintGCDetails -XX:+UseCompressedOops -XX:+UseConcMarkSweepGC -XX:+UseParNewGC
有人能解释我NewRatio和OldSize的含义吗? 特别是OldSize是终身一代的初始规模?
NewRatio是老一代与年轻一代的比例(例如,值2表示旧的最大尺寸将是年轻人最大尺寸的两倍,即年轻人可以达到堆的1/3)。
OldSize不是记录的选项之一,但我认为它是终身空间的大小http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html
由于NewRatio已经得到了很好的解释,因此以下内容应该有助于OldSize。
这里,OldSize =>终身代的默认大小。 这是天赋的默认尺寸,直到人体工程学发挥作用。