Java虚拟机内存模型

Java虚拟机内存模型是java运行的基础,JVM虚拟机将内存数据分为:程序计数器,虚拟机栈,本地方法栈,Java堆,方法区。

程序计数器是一块很小的内存空间。由于java是支持线程的语言,当线程数量超过CPU数量的时候,线程之间根据时间片轮转抢夺CPU资源。
对于单核CPU而言,每一时刻,只能有一个线程在运行,其他线程必须切换出去。为此,每一个线程都必须用一个独立的程序计数器,
用于记录下一条要运行的指令。各个线程之间的计数器互不影响,独立工作;是一块线程私有的内存空间。如果当前的线程正在执行一个Java方法,
则程序计数器记录正在执行的Java字节码地址,如果当前线程正在执行一个Native方法,则程序计数器为空。

文章目录
|