从品牌网站建设到网络营销策划,从策略到执行的一站式服务
目录
一、程序计数器
二、虚拟机栈
三、本地方法栈
四、堆
五、方法区
java虚拟机运行时数据区域主要包含:
1.程序计数器
2.虚拟机栈
3.本地方法栈
4.方法区
5.堆
下图绿色部分的数据是所有线程共享的。
a、是一块较小的内存空间,是当前线程执行的字节码指示器。
b、当前线程执行的是java方法,程序计数器记录正在执行的虚拟机字节码指令地址。
c、若当前线程执行的是本地方法,程序计数器值为空。(undefined)。
d、每条线程有独立的程序计数器,互补影响,独立存储。(线程私有)
e、程序计数器不会发生OutOfMemoryError
二、虚拟机栈每个java方法在虚拟机栈中都是一个栈帧,方法从调用到执行完毕的过程对应栈帧在虚拟机栈中入栈,出栈的过程。
a、 我们常说的栈指的就是虚拟机栈,精确一点就是指虚拟机栈中局部变量表部分。
b、局部变量表存放了基本数据类型(boolean,byte,char,short,int,float,long,double);对象引用(指向对象起始地址的指针)
虚拟机栈是线程私有的。
c、当线程请求的栈深度大于虚拟机允许的深度,抛出StackOverFlowError。
d、当虚拟机栈的深度可以动态扩展,扩展后还申请不到足够内存,抛出OutOfMemoryError。
三、本地方法栈a、与虚拟机栈类似,只不过本地方法栈执行的是native方法。(C语言写的)
b、当线程请求的栈深度大于本地方法栈允许的深度,抛出StackOverFlowError。
c、当本地方法栈的深度可以动态扩展,扩展后还申请不到足够内存,抛出OutOfMemoryError。
四、堆a、堆是虚拟机中内存大的。
b、堆为所有的对象实例及数组分配内存。
c、堆中没有足够的空间为实例分配内存时,将抛出OutOfMemoryError。
五、方法区a、存储已被虚拟机加载的类型信息,常量,静态变量,运行时常量池。
b、方法区无法满足内存分配需求时,将抛出OutOfMemoryError。
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
成都网站建设公司地址:成都市青羊区太升南路288号锦天国际A座10层 建设咨询028-86922220
成都快上网科技有限公司-四川网站建设设计公司 | 蜀ICP备19037934号 Copyright 2020,ALL Rights Reserved cdkjz.cn | 成都网站建设 | © Copyright 2020版权所有.
专家团队为您提供成都网站建设,成都网站设计,成都品牌网站设计,成都营销型网站制作等服务,成都建网站就找快上网! | 成都网站建设哪家好? | 网站建设地图