后端岗位面试题更新 2026-08-05

当出现StackOverflowError时,如何在不修改代码的情况下通过JVM参数实现栈深度的扩展?请说明-Xss与-Xmx的设置原则及其协同关系。

淘宝闪购后端开发消费品/零售技术原理问题排查JVM

考察说明

考察对JVM栈内存机制、StackOverflowError成因及各线程栈空间限制的理解

回答思路

  1. 准确说明-Xss用于设置单线程栈大小,调整可影响最大栈深
  2. 解释StackOverflowError是线程栈耗尽而非堆内存不足,与-Xmx的关系
  3. 说明可通过增大-Xss直接扩展栈深度,但需权衡线程数与内存占用
  4. 指出-Xmx主要影响堆而间接影响可用内存,两者需协调配置以避免过多栈内存挤压堆