虚拟机内存笔记之计数器、栈

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_36552034/article/details/80463332

1.程序计数器mean当前线程所执行的字节码的行号指示器
2.字节码解释器获取下一条需要执行的字节码指令by程序计数器改变其本身的值
3.程序计数器的值对应着虚拟机字节码指令地址(by 1and 2)

4.程序计数器=线程私有
5.每个线程都有一个独立的程序计数器(by 4)

6.虚拟机栈=线程私有(euqal 5)
7.虚拟机栈描述了java方法执行的内存模型:方法创建时建立一个栈帧(存放局部变量表、操作数栈、动态链接、方法出口等信息),方法调用等于入栈,方法结束等于出栈。

8.局部变量表所需内存在编译期间完成分配,一个方法需要在帧中分配多大的局部变量空间是完全确定的,运行期不改变。
9.线程请求的栈深度大于虚拟机所允许的深度=stackoverflowerror异常。

10.如果虚拟机栈可以动态扩展,如果扩展时无法申请到足够的内存=OutOfMemoryError异常。


展开阅读全文

没有更多推荐了,返回首页