jvm的内存结构
根据JVM规范,jvm 内存共分为虚拟机栈,堆,方法区,程序计数器,本地方法栈
五个部分
1,虚拟机栈
线程私有,每个方法在执行的时候会创建一个栈帧,存储了局部变量表,操作数帧,动态连接,方法返回地址等;每个方法从调用到执行完毕,对应一个栈帧在虚拟机中的出栈和入栈。
2,堆
线程共享,被所有线程共享的一块内存区域,在虚拟机启动时创建,用于存放对象实例。
3,方法区
线程共享;被所有线程共享 的一块内存区域;用于存储已被虚拟机加载的类信息,常量,静态变量等。
4,程序计数器
线程私有,是当前线程所执行的字节码的行号指示器,每条线程都有一个独立的线程计数器,这类内存也被称为 "线程私有"的内存
,5, 本地方法栈
线程私有;主要为虚拟机使用到的Native 方法服务。
网友评论