课程咨询 :186 8716 1620      qq:2066486918

昆明Java培训 > 达内新闻 > Java虚拟机栈
  • Java虚拟机栈

    发布:昆明Java培训      来源:达内新闻      时间:2015-12-31

  • 与PC寄存器一样,Java虚拟机栈也是线程私有的。昆明java培训接下来就详细讲解一下,其实每一个JVM线程都有自己的java虚拟机栈,这个栈与线程同时创建,它的生命周期与线程相同。

    虚拟机栈描述的是Java方法执行的内存模型:每个方法被执行的时候都会同时创建一个栈帧(Stack Frame)用于存储局部变量表、操作数栈、动态链接、方法出口等信息。

    每一个方法被调用直至执行完成的过程就对应着一个栈帧在虚拟机栈中从入栈到出栈的过程。

    JVM stack 可以被实现成固定大小,也可以根据计算动态扩展。

    昆明java培训认为如果采用固定大小的JVM stack设计,那么每一条线程的JVM Stack容量应该在线程创建时独立地选定。

    JVM实现应该提供调节JVM Stack初始容量的手段;如果采用动态扩展和收缩的JVM Stack方式,应该提供调节最大、最小容量的手段。

    如果线程请求的栈深度大于虚拟机所允许的深度将抛出StackOverflowError;

    如果JVM Stack可以动态扩展,但是在尝试扩展时无法申请到足够的内存时抛出OutOfMemoryError。

    昆明java培训做的每一个假设都是有这样的情况出现过,作为提示希望小伙伴们都多注意一点。

    推荐文章

上一篇:程序计数器

下一篇:昆明java培训分享:快速排序算法

最新开班日期  |  更多

Java--零基础全日制班

Java--零基础全日制班

开班日期:12/29

Java--零基础业余班

Java--零基础业余班

开班日期:12/29

Java--周末提升班

Java--周末提升班

开班日期:12/29

Java--零基础周末班

Java--零基础周末班

开班日期:12/29

  • 网址:http://km .java.tedu.cn      地址:昆明市官渡区春城路62号证券大厦附楼6楼
  • 课程培训电话:186 8716 1620      qq:2066486918    全国服务监督电话:400-827-0010
  • 服务邮箱 ts@tedu.cn
  • 2001-2016 达内国际公司(TARENA INTERNATIONAL,INC.) 版权所有 京ICP证08000853号-56