Java 内存区域及内存溢出.pdfVIP

  • 6
  • 0
  • 约5.81千字
  • 约 6页
  • 2017-06-03 发布于湖北
  • 举报
Java 内存区域与内存溢出 Java 内存区域与内存溢出 内存区域 Java 虚拟机在执⾏ Java 程序的过程中会把他所管理的内存划分为若⼲个不同的数据区 域 Java 虚拟机规范将 JVM 所管理的内存分为以下⼏个运⾏时数据区:程序计数 器、Java 虚拟机栈、本地⽅法栈、Java 堆、⽅法区 下⾯详细阐述各数据区所存储的 数据类型 程序计数器 ⼀块较⼩的内存空间,它是当前线程所执⾏的字节码的⾏号指⽰器,字节码解释器⼯ 作时通过改变该计数器的值来选择下⼀条需要执⾏的字节码指令,分⽀、跳转、循环 等基础功能都要依赖它来实现 每条线程都有⼀个独⽴的的程序计数器,各线程间的 计数器互不影响,因此该区域是线程私有的 当线程在执⾏⼀个 Java ⽅法时,该计数器记录的是正在执⾏的虚拟机字节码指令的地 址,当线程在执⾏的是 Native ⽅法 (调⽤本地操作系统⽅法)时,该计数器的值为 空 另外,该内存区域是唯⼀⼀个在 Java 虚拟机规范中么有规定任何 OOM (内存溢 出:OutOfMemoryError )情况的区域 Java 虚拟机栈 该区域也是线程私有的,它的⽣命周期也与线程相同 虚拟机栈描述的是 Java ⽅法执 ⾏的内存模型

文档评论(0)

1亿VIP精品文档

相关文档