根据文档,-Xss用于设置JVM的堆栈大小。但是我对这个说法非常困惑。
在Java中,每个线程都有自己的堆栈。那么-Xss指定的数字是否代表:
所有线程可以使用的堆栈的总内存?例如,如果将-Xss设置为256K,则所有线程将在这256K内存中创建自己的堆栈。
每个线程的堆栈大小,例如,如果将-Xss设置为256K,则每个线程都会有一个256K大小的堆栈。因此,10个线程将共使用2560K。
非常感谢。
编辑:
谢谢你们的回答。看起来它是上述第(2)种情况。-Xss指定了特定线程的最大堆栈大小。
然后我有一个跟进问题:这些内存将分配在哪里?
我们可以使用-Xmx和-Xms指定保留的堆内存。堆栈是否使用这些保留内存分配?还是直接从本机内存分配?