java调用堆栈的最大深度是多少?

java调用堆栈的最大深度是多少?

在得到StackOverflowError之前,我需要多深入调用堆栈?答案平台是否依赖?



偶然的你
浏览 1310回答 3
3回答

慕桂英4014372

我在我的系统上测试并没有找到任何常量值,有时在8900次调用后发生堆栈溢出,有时仅在7700之后,随机数。public class MainClass {     private static long depth=0L;     public static void main(String[] args){         deep();      }     private static void deep(){         System.err.println(++depth);         deep();     }}

呼啦一阵风

可以使用-Xss命令行开关设置堆栈大小,但根据经验,它足够深,数百甚至数千个调用深度。(默认值取决于平台,但在大多数平台上至少为256k。)如果堆栈溢出,99%的时间是由代码中的错误引起的。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java