对于 Hotspot JVM,Xss选项是否设置了始终固定在此大小的初始堆栈大小?或者它是否设置了最大堆栈大小,以便堆栈最初以较小的大小开始,然后可以增长到设置的最大大小?
这种行为对于“堆大小”非常明显,其中“Xms”设置初始堆大小,“Xmx”设置最大堆大小。但是“Xss”选项对我来说似乎并不清楚。
注意:我浏览了Dynamicly expandable JVM stack的帖子,但我无法从该帖子中得到明确的答案。
对于 Hotspot JVM,Xss选项是否设置了始终固定在此大小的初始堆栈大小?或者它是否设置了最大堆栈大小,以便堆栈最初以较小的大小开始,然后可以增长到设置的最大大小?
这种行为对于“堆大小”非常明显,其中“Xms”设置初始堆大小,“Xmx”设置最大堆大小。但是“Xss”选项对我来说似乎并不清楚。
注意:我浏览了Dynamicly expandable JVM stack的帖子,但我无法从该帖子中得到明确的答案。
-Xss
设置初始线程堆栈大小(由操作系统特定算法调整)。
例如,看一下linux 实现,第 4130-4151 行:
该-Xss
值由启动器放入变量ThreadStackSize
中。在清理和四舍五入后,它被存储通过JavaThread::set_stack_size_at_create
,稍后将在创建新的 Java 线程时用于调整堆栈的大小。
不知道Hotspot是否实现了线程栈的动态扩展。