本地直接分配内存:避免了在java堆和native堆中来回复制数据
虚拟机运行时内存:
线程共享内存:
堆:存放对象实例。
方法区(常量池:存放编译期生成的各种字面量和符号引用,也可以在运行时将常量放入池中,如String.intern()方法):存储已被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码等数据。
线程隔离内存:
java方法栈:生名周期与线程相同,描述java方法执行的内存模型,方法执行的过程对应栈帧(存储局部变量表,操作数栈、动态链接、方法出口等信息)入栈与出栈的过程。
本地方法栈:为虚拟机执行native方法服务。
程序计数器:当前线程所执行的字节码的行号指示器。如果正在执行java方法,计数器的值为正在执行的字节码的指令地址,如果执行的是native方法,则值为Undefined。