JVM运行时数据区总览
概述
Java 虚拟机定义了在程序执行过程中使用的各种运行时数据区。
其中一些数据区在 Java 虚拟机启动时创建,只有在 Java 虚拟机退出时才会销毁。
其他数据区是按线程创建的。每线程数据区在创建线程时创建,并在线程退出时销毁。
tip:【由官方文字翻译而来,英文原版见下链接】
官网
:https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-2.html#jvms-2.5
JVM运行时数据区可以分为两大区域:线程共享区域以及线程私有区域,总览图如下:
总览图
线程共享区域
主要由两部分组成:方法区和堆区
线程私有区域
主要由三部分组成:PC寄存器,虚拟机栈,本地方法栈