前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JVM的内存结构

JVM的内存结构

作者头像
孙晨c
发布2020-05-08 15:25:54
3840
发布2020-05-08 15:25:54
举报
文章被收录于专栏:无题~

Java虚拟机运行时数据区图

程序计数器

程序计数器,可以看作当前线程所执行的字节码的行号指示器 它是线程私有的。

Java虚拟机栈

  • 线程私有的,生命周期与线程相同。
  • 每个方法被执行的时候都会创建一个"栈帧",用于存储局部变量表(包括参数)、操作数栈、动态链接、方法出口等信息。
  • 局部变量表存放各种基本数据类型boolean、byte、char、short等

本地方法栈

  • 与虚拟机栈基本类似,区别在于虚拟机栈为虚拟机执行的java方法服务,而本地方法栈则是为Native方法服务。

Java堆

  • Java堆是java虚拟机所管理的内存中最大的一块内存区域,也是被各个线程共享的内存区域,在JVM启动时创建。 其大小通过-Xms和-Xmx参数设置,-Xms为JVM启动时申请的最小内存,-Xmx为JVM可申请的最大内存。

方法区

  • 它用于存储虚拟机加载的类信息、常量、静态变量、是各个线程共享的内存区域。
  • 可以通过-XX:PermSize 和 -XX:MaxPermSize 参数限制方法区的大小。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-05-05 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Java虚拟机运行时数据区图
    • 程序计数器
      • Java虚拟机栈
        • 本地方法栈
          • Java堆
            • 方法区
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档