【深入理解java虚拟机】 - JVM运行时数据区各部分简介
JVM在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而一直存在,有些区域则是依赖用户线程的启动和结束而建立和销毁。JVM管理的内存可以分为方法区、堆区、JVM栈、本地方法栈和程序计数器5个运行时数据区。其中JVM栈、本地方法栈和程序计数器是由所有线程共享的数据区;方法区和堆区是线程隔离的数据区。程序计数器(Program Counter Register)可以看作是当前线程所执行的字节码的行号指示器。字节码解