jvm栈
2020-08-29
- jvm栈是线程私有的
- 每个方法被执行的时候,java都会同步创建一个栈帧,用来存放局部变量表、操作数栈、动态连接、方法出口等信息
- 每一个方法被调用直至完毕的过程,就是一个栈帧在虚拟机中从入栈到出栈的过程
- 局部变量表存放了编译期间可知的各种java基本数据类型、对象引用和returnAddress(指向了一条字节码指令的地址)
- 这些数据类型在局部变量表中存储空间以局部变量槽(slot)表示,64位的long和double会占用两个槽,其余的数据类型只占用一个。
- 局部变量表所需的内存空间在编译期间完成分配。