起源
网上很多博文都java8之前的jvm的各种设置介绍,尤其关于Java8使用哪种垃圾收集算法以及jvm方面改变没有准确的介绍。本文主要参考Oracle官方文档。因此会有大量英文引用。
先上结论:
默认使用ParallelGC收集器,也就是在新生代使用Parallel Scavenge收集器,老年代使用ParallelOld收集器
默认的GC算法
-XX:+PrintCommandLineFlags (具体介绍在https://docs.oracle.com/javase/8/docs/technotes/guides/troubleshoot/bugreports003.html#JSTGD524)。 我们可以使用-XX:+PrintCommandLineFlags参数打印出当前Java的默认设置。
The -XX:+PrintCommandLineFlags option can be used to verify the command-line options. This option prints all command-line flags to the VM. The command-line options can also be obtained for a running VM or core file using the jmap utility.
我的java版本是java version “1.8.0_191”。 机器是Windows10 , 16G内存, 4核8线程。
C:\Users\Lenovo>java -ve