1、程序计数器
线程不共享,记录每个线程执行的位置
2、虚拟机栈
线程不共享,每个线程一个栈帧。存放方法中的局部变量。常用类型:整型,浮点型,字符型,对象引用
3、本地方法栈
线程不共享,和虚拟机栈类似,存放的是本地方法的变量
4、堆
线程共享,生成的对象存放的位置,垃圾回收管理的主要区域
5、方法区
存放类的信息:版本信息,属性,方法的定义等等
6、运行时常量池
属于方法区,存放类的字面量及字符引用
7、直接内存
不属于虚拟机管理的,有些本地方法直接使用的
线程不共享,记录每个线程执行的位置
线程不共享,每个线程一个栈帧。存放方法中的局部变量。常用类型:整型,浮点型,字符型,对象引用
线程不共享,和虚拟机栈类似,存放的是本地方法的变量
线程共享,生成的对象存放的位置,垃圾回收管理的主要区域
存放类的信息:版本信息,属性,方法的定义等等
属于方法区,存放类的字面量及字符引用
不属于虚拟机管理的,有些本地方法直接使用的
本文标题:java虚拟机内存分配
本文链接:https://www.haomeiwen.com/subject/qiucqftx.html
网友评论