-Xss / -XX:ThreadStackSize |
---|
指定线程最大栈空间 |
jdk1.4里默认的栈大小是256KB |
jdk1.5里默认的栈大小为1M |
这个参数直接会影响创建线程数量,值越小创建线程数越多; (估算jvm进程的最大线程数) |
这个参数直接决定了函数可调用的最大深度,值越大调用最大深度越大;(参照如下代码) |
public class Jvm4_Xss {private static int count;private static void recursion() {count++;recursion();}public static void main(String[] args) {try {recursion();} catch (Throwable e) {System.out.println("调用最大深度:" + count);e.printStackTrace();}}
}
------------------------------------------------------------------
//JVM 启动参数
-Xmx20m -Xms20m -Xss1m//运行结果:
调用最大深度:43909
java.lang.StackOverflowErrorat jvm.Jvm4_Xss.recursion(Jvm4_Xss.java:8)at jvm.Jvm4_Xss.recursion(Jvm4_Xss.java:8)
------------------------------------------------------------------
//JVM 启动参数
-Xmx20m -Xms20m -Xss2m//运行结果:
调用最大深度:103720
java.lang.StackOverflowErrorat jvm.Jvm4_Xss.recursion(Jvm4_Xss.java:8)at jvm.Jvm4_Xss.recursion(Jvm4_Xss.java:8)
拓展 :JVM常用参数