动态可扩展的JVM堆栈

A21*_*21z 2 java jvm jvm-arguments

JVM规范表示JVM堆栈可以是固定大小或动态可扩展的.

-Xss JVM选项允许设置固定大小,如果我没有设置此选项是设置默认值(大约512-2048k),但是如何告诉JVM在需要时动态分配其堆栈?

如果我不能设置动态大小选项,设置一个大的-Xss值(假设20M)实际上为我的JVM中的每个线程分配20MB的内存,还是动态分配的内存将限制为20MB?

NPE*_*NPE 7

最大堆栈大小是分配给堆栈的虚拟地址空间量.内存仅根据需要提交到堆栈.

请注意,在32位系统上,虚拟地址空间是一种相对稀缺的资源.每个进程得到的数量少于(有时得多)4GB.考虑到这一点,20MB的堆栈会将线程数限制在75到175之间.