因为栈是线程私有的,它的生命周期与线程相同,每个方法在执行的时候都会创建一个栈帧,用于存储局部变量、操作数栈、动态链接、方法出口等信息,如果线程请求的栈深度大于虚拟机所允许的最大深度,将抛出StackOverflowError栈内存溢出异常。一般在方法递归调用时容易造成栈内存溢出。
因为栈是线程私有的,它的生命周期与线程相同,每个方法在执行的时候都会创建一个栈帧,用于存储局部变量、操作数栈、动态链接、方法出口等信息,如果线程请求的栈深度大于虚拟机所允许的最大深度,将抛出StackOverflowError栈内存溢出异常。一般在方法递归调用时容易造成栈内存溢出。
本文标题:什么情况下会发生栈内存溢出?
本文链接:https://www.haomeiwen.com/subject/nuvuzrtx.html
网友评论