写点什么

JVM 调优简要思想及简单案例 -JVM 的内存区域大致划分

作者:zarmnosaj
  • 2022 年 6 月 16 日
  • 本文字数:638 字

    阅读完需:约 2 分钟

前言

上一块主要是了解一下 JVM 到底是个什么东西,此部分主要针对 JVM 的内存区域 ,我们要探讨它这里面的内存区域到底是怎么划分的,从代码执行的这样一个大概步骤,我们去理解。

JVM 的内存区域大致划分

根据之前讨论的步骤,jvm 需要以下大致区域来使用:


  1. 区域一:加载这个 class 文件 到 JVM 里面的时候,会有一块内存区域存放这个 class 文件。这一块存放已加载类信息

  2. 区域二:有 new hello 这样一段代码, new hello 它其实就是创建一个对象,这样一个创建出来的对象,它肯定是需要一块区域去保存的

  3. 区域三:第三块刚有简单的提到,比如说准备阶段,有一些变量,它会分配一些初始化的空间来保存。这样一块区域,也是要用来保存方法里面的一些局部变量。

  4. 区域四:需要一个程序计数据。比如说它在执行到某一行代码时,需要用一个东西去记录我们去执行到哪一段了。因为我们一个方法然后执行到一半的时候就会调用另外一个方法。那另外一个方法执行完成之后再回到这个方法,它需要继续在它调用之前那一段开始继续执行,而不是从头执行。程序计数据,这个作用就体现在这

  5. 其他区域:其他一些内存区域,暂时不过不做过多的探讨



对于以上的描述,就对应图示这几块区域,然后也对应了 JVM 里面大致的一个内存内存划分。


  1. 比如说方法区,方法区是主要用于存放加载类信息或者是一些静态变量的,这是一个通用的命名,我们称之为方法区。

  2. 虚拟机栈的话主要保存局部变量

  3. 本地方法栈暂不探讨

  4. 堆就对应这以上的区域二,这一块是我们主要需要关心的地方,JVM 调优也主要是调优这一部分的区域。

  5. 程序计数器

发布于: 刚刚阅读数: 3
用户头像

zarmnosaj

关注

靡不有初,鲜克有终 2020.02.06 加入

成都后端混子

评论

发布
暂无评论
JVM调优简要思想及简单案例-JVM的内存区域大致划分_6月月更_zarmnosaj_InfoQ写作社区