欢迎来到追赶网 - B2B中小企业推广平台
追赶网

上海快网网络信息技术有限公司查看联系方式

供应虚拟机Java 虚拟机的内存怎样分配

  • 发布时间:2023年03月21日 13:26
  • 产品价格:面议
  • 获得人气:0
    人气越多,排名越靠前!还有首页推荐机会!
温馨提示:
该信息由追赶网网友发布,其真实性及合法性由发布人负责,追赶网仅引用以供用户参考,详情请阅读追赶网免责条款,谨防上当受骗!
商品详情
      Java虚拟机内存分为五个区域: 办法区,堆, 虚拟机栈,本地办法栈,程序计数器。

其间办法区和堆是java虚拟机同享的内存区域,虚拟机栈,本地办法栈,程序计数器是线程私有的。

1.程序计数器:         当时线程履行字节码的行号指示器。

经过改变这个指示器的值来选择下一条需求履行的字节码指令。

这个内存区域是Java虚拟机*一个没有定义OutOfMemeryError状况的区域。

2. Java虚拟机栈:          虚拟机栈描绘的是Java办法履行的内存模型:每个办法履行是都会创立栈帧(Stack Frame)用于存储局部变量,操作栈,办法信息,动态连接,办法出口等信息。

        在java虚拟机标准中,关于这两个区域规定了两种状况的反常: 1)假如线程恳求的栈深度大于虚拟机所答应的深度将会抛出StackOverFlowError反常,  2)Java虚拟机能够动态扩展,当无法申请到满意的内存时会抛出OutOfMemeryError 3.本地办法栈        本地办法栈与Java虚拟机栈十分类似,其区别是Java虚拟机栈为虚拟机履行Java办法服务,而本地办法栈是虚拟机使用到的Native办法服务。

所以本地办法栈也也许呈现两种与Java虚拟机栈相同的反常。

4. Java堆         Java堆是Java虚拟机办理的*的一块内存区域,java堆是被一切Java线程同享的,在Java虚拟机启动时创立,此内存的*意图即是寄存目标实例。

简直一切的目标实例都要分配在堆中。

(跟着JIT编译器的发展,*剖析技能的逐渐老练,栈上分配,标量替换等优化技能,使得部分目标不再分配在堆上。

) Java堆的巨细经过 -Xmx和-Xms两个参数控制。

但是当堆的内存再无法扩展时,就会呈现OutOfMemeryError. 5.办法区         办法区与Java堆相同,是各个线程同享的内存区域,他用于存储类信息,常量,静态变量以及及时编译后的代码等数据。

当办法区无法满意内存分配需求时,将抛出OutOfMemeryError. 标签:     上海市虚拟机   上海市虚拟机厂家
上海市 上海市上海市虚拟机厂家
供应虚拟机Java 虚拟机的内存怎样分配

本文地址: