JAVA虚拟机的内存划分
1、程序计数器
当前线程所有的字节码的行号指示器,是线程独有的一块内存。
2 、JAVA虚拟机栈
线程私有的,用于存放局部变量表、操作栈、动态链接、方法出口等。
3、本地方法栈
存放本地方法中变量的内存区域。
4、方法区
各个线程共享的内存区域,用于存储已被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码等数据。一般使用永久代来实现方法区。
5、JAVA堆
JAVA堆被所有的线程共享的一块内存区域,用于存放对象实例和数组。
JAVA堆还可以细分成新生代和老年代,新生代可以再分成Eden空间、From Survivor空间、To Survivor空间,比例一般是8:1:1
深入理解JAVA虚拟机---JAVA虚拟机的内存划分
原文作者:java虚拟机
原文地址: https://blog.csdn.net/brushli/article/details/78336135
本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
原文地址: https://blog.csdn.net/brushli/article/details/78336135
本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。