ZKX's LAB

jvm那些区域会出现oom Java运行时区域,哪些区域是线程私有的?哪些是共有的?

2020-10-10知识18

Java运行时区域,哪些区域是线程私有的?哪些是共有的?

jvm那些区域会出现oom Java运行时区域,哪些区域是线程私有的?哪些是共有的?

Java运行时区域,哪些区域是线程私有的?哪些是共有的? 概述对于 Java 程序员来说,在虚拟机自动内存管理机制下,不再需要像 C/C++程序开发程序员这样为每一个 new 操作去写对应的 delete/free 操作,不容易出现内存泄漏和内存溢出问题。正是因为 Java 程序员把内存控制权利交给 Java 虚拟机,一旦出现内存泄漏和溢出方面的问题,如果不了解虚拟机是怎样使用内存的,那么排查错误将会是一个非常艰巨的任务。运行时数据区域Java 虚拟机在执行 Java 程序的过程中会把它管理的内存划分成若干个不同的数据区域。线程私有的:程序计数器虚拟机栈本地方法栈线程共享的:堆方法区直接内存(非运行时数据区的一部分)

jvm那些区域会出现oom Java运行时区域,哪些区域是线程私有的?哪些是共有的?

jvm中哪个区域不会出现outof java虚拟机学习 数据类型(基本类型、引用类型)=>;数值本身、引用值

jvm那些区域会出现oom Java运行时区域,哪些区域是线程私有的?哪些是共有的?

jvm堆内存区域包括哪些 根据《Java虚拟机规范2113》的规定,运行时数据区通常包5261括这几个部分:程序计数器4102(Program Counter Register)、Java栈1653(VM Stack)、本地方法栈(Native Method Stack)、方法区(Method Area)、堆(Heap)。如上图所示,JVM中的运行时数据区应该包括这些部分。在JVM规范中虽然规定了程序在执行期间运行时数据区应该包括这几部分,但是至于具体如何实现并没有做出规定,不同的虚拟机厂商可以有不同的实现方式。

#线程#jvm#本地线程#虚拟机

随机阅读

qrcode
访问手机版