02 | JVM-运行时数据区

2019-06-12  本文已影响0人  小亮__

所有的java代码无非分三种类型(数据,控制,指令),如下图所示

image.png
程序计数器【指令类型】

因为线程的执行是通过cpu的,在线程执行指令的过程中,cpu可能被抢占,而需要有个地方记录指令执行到哪里了,所以需要程序计数器

JVM虚拟机栈【指令类型】

用于存储当前线程运行方法所需要的数据,指令,返回地址,特点如下:

虚拟机栈存储的主要组成部分如下

image.png
本地方法区【指令类型】

和虚拟机栈功能相似,但管理的不是JAVA方法,是本地方法,本地方法是用C实现的

方法区

存储类的信息,常量(jdk1.7),静态变量,JIT

JVM堆

存储对象和数据共线程共享(优化重点,垃圾回收重点)

上一篇 下一篇

猜你喜欢

热点阅读