虚拟机启动参数
启动Java虚拟机时,可以为其设置启动参数
在命令行中,通过如下方式来设置
java[-options] classfile
在Eclipse中,通过如下方式来设置(新建或运行一次以后再设置)
此外从上面还可以看出还可以设置传递给main()方法的参数,这里不再赘述。
常用的参数如下
加载
-Xbootclasspath/a:D:/temp、-Xbootclasspath/p:D:/temp
将D:/temp追加到启动ClassPath后、前,该参数指明的路径下,将会被启动类加载器搜索到。
-XX:+TraceClassLoading、-XX:+TraceClassUnloading
跟踪类的加载,跟踪类的卸载
内存空间配置
-XX:PermSize=5M、 -XX:MaxPermSize=5M (k、m、g、K、M、G)
1.8之前的初始永久区、最大永久区
-XX:MaxMetaspaceSize
1.8及以后的最大元数据区
-Xss128K
每个线程的最大栈内存
-Xms16M、-Xmx32M
初始堆内存、最大堆内存
-Xmn1M
新生代的大小
-XX:NewRatio=2 (=老年代/新生代)
老年代和新生代的比例
-XX:SurvivorRatio=2 (=eden/from=eden/to)
新生代中eden和from/to的比例
垃圾收集器
GC
-XX:+PrintGC
-XX:+PrintGCDetails
输出垃圾回收日志,其中MajorGC和FullGC的输出还不一样。并且会在虚拟机退出前打印堆的详细信息
-XX:+PrintHeapAtGC
在GC前后,都输出详细的堆信息