JVM
kevinmoto
这个作者很懒,什么都没留下…
展开
-
JAVA 虚拟机栈
java 虚拟机栈,在此规定了两种异常情况: 1.线程请求栈的深度大于虚拟机所允许的深度,将抛出StackOverflowError异常; 2.如果虚拟机栈可以动态扩展,当扩展是无法申请到足够的内存时会抛出OutOfMemoryError异常. 第一种情况示例分析 code: import java.util.ArrayList; im转载 2012-08-07 20:26:47 · 864 阅读 · 0 评论 -
JVM 栈帧
每当启动一个新线程的时候,java虚拟机都会为它分配一个java栈。java以栈帧为单位保存线程的运行状态。虚拟机只会对java栈执行两种操作:以栈帧为单位的压栈或者出栈。 java方法可以通过两种方式完成,一种通过return返回,成为正常返回;一种通过抛出异常而异常终止 。虚拟机都会将当前栈弹出java栈然后释放掉,这样上一个方法的栈帧就是当前栈帧了。 java转载 2012-08-07 20:21:58 · 5546 阅读 · 1 评论