JVM原理

# JVM原理 #
JVM->java虚拟机,解释器,负责将程序员编写的.java文件编译为多平台通用的字节码(.class)文件,最终将字节码解释给计算机执行

[JVM内存区域主要划分为“线程共享区”“非线程共享区”,比如,Method Area(方法区,non-heap)与Heap(堆),Direct Memory(运行时数据区域)是线程共享的,VM Stack(java方法栈,虚拟机栈),Native Method Stack(本地方法栈)和Program Counter Register(程序计数器)是非线程共享的]

2.JVM运行时初始分配方法区与堆,遇到线程时,分配程序计数器,虚拟机栈,本地方法栈,线程终止时,三者的内存空间会被释放(生命周期==所属线程生命周期),这也是为什么GC机制只会发生在“线程共享区”的原因。

相关推荐