这里写自定义目录标题
1.cmd执行命令
java -XX:+PrintCommandLineFlags -version
输出如下:
2.JVM(HotSpot)参数选项提供了三大类
第一类:“-”开头,标准参数,JVM(HotSpot)都支持。
这类参数的功能很稳定,在后续版本中也不太会发生变化。
运行java或者 java -help 可以看到所有的标准参数选项。
语法: 所有的标准参数选项都是以 - 开头,比如-version,-server等。
第二类:“-X”开头,非标准参数,各自版本的JVM(HotSpot)支持各自命令。
这类参数的功能也很稳定,但官方指出,这些参数可能会在后续版本中发生变化,也可能在后续版本中去掉不提供了。
运行 java -X 命令可以看到所有的X参数选项。
语法: 所有的非标准参数选项都是以 -X 开头,比如-Xms。
第三类:“-XX”开头,不稳定参数,也许JVM(HotSpot)下个版本会取消。
这类参数主要是给JVM开发者用于开发和调试JVM用的,在后续版本中有可能会发生变化。
运行 java -XX:+PrintFlagsInitial 命令可以看到所有的XX参数选项。
语法:
1.所有的不稳定参数选项都是以 -XX 开头。
2.如果是布尔类型的参数,它的格式为-XX:+flag或者-XX:-flag,分别表示开启和关闭该参数。
3.如果是非布尔类型的参数,它的格式为-XX:flag=value
回归正题
讲一下 java -XX:+PrintCommandLineFlags -version 输出结果
-XX:InitialHeapSize=266664000 #JVM起始堆内存大小
-XX:MaxHeapSize=4266624000 #JVM最大堆内存大小
-XX:+UseCompressedClassPointers #默认打开Class指针压缩
-XX:+UseCompressedOops #默认打开普通对象指针压缩,Oops(ordinary object pointers)
-XX:+UseParallelGC #JVM默认使用的垃圾收集器(新生代:Parallel Scavenge,老年代:Parallel Old)