首页 > 其他分享 >【JVM 堆 03】

【JVM 堆 03】

时间:2023-05-06 16:25:40浏览次数:30  
标签:03 used space 0x00000007bfd00000 JVM new id StarckFrameTest

一、堆的细分内存结构

1、Java 8 及之后堆内存逻辑上分为三部分:新生区+养老区+元空间

Young Generation Space    新生区     Young/New

  又被划分为Eden区和Survivor区

Tenure Generation space    养老区    Old/Tenure

Meta  Space          元空间    Meta

#案例演示:程序运行时堆的空间结构

1、编写代码

public class StarckFrameTest {
    private int id;
    public StarckFrameTest(int id){
        this.id = id;
    }
    public void show(){
        System.out.println("My ID is "+id);
    }
    public static void main(String[] args) {
        StarckFrameTest s1 = new StarckFrameTest(1);
        StarckFrameTest s2 = new StarckFrameTest(2);

        int[] arr = new int[10];
        Object[] arr1 = new Object[10];
    }
}

在run-Edit Configuration中设置-Xms10m -Xmx10m -XX:+PrintGCDetails (-Xms10m -Xmx10m设置堆大小,-XX:+PrintGCDetails设置打印的堆信息)

设置后执行程序,输出结果:

Heap
 PSYoungGen      total 2560K, used 1461K [0x00000007bfd00000, 0x00000007c0000000, 0x00000007c0000000)
  eden space 2048K, 71% used [0x00000007bfd00000,0x00000007bfe6d578,0x00000007bff00000)
  from space 512K, 0% used [0x00000007bff80000,0x00000007bff80000,0x00000007c0000000)
  to   space 512K, 0% used [0x00000007bff00000,0x00000007bff00000,0x00000007bff80000)
 ParOldGen       total 7168K, used 0K [0x00000007bf600000, 0x00000007bfd00000, 0x00000007bfd00000)
  object space 7168K, 0% used [0x00000007bf600000,0x00000007bf600000,0x00000007bfd00000)
 Metaspace       used 3067K, capacity 4496K, committed 4864K, reserved 1056768K
  class space    used 340K, capacity 388K, committed 512K, reserved 1048576K

二、堆空间大小的设置和查看

 

标签:03,used,space,0x00000007bfd00000,JVM,new,id,StarckFrameTest
From: https://www.cnblogs.com/frankruby/p/17377741.html

相关文章

  • jvm调优总结(从基本概念 到 深度优化)
    关键字:jvm调优总结(从基本概念到深度优化)JVM参数详解Java虚拟机中,数据类型可以分为两类:基本类型和引用类型。基本类型的变量保存原始值,即:他代表的值就是数值本身;而引用类型的变量保存引用值。“引用值”代表了某个对象的引用,而不是对象本身,对象本身存放......
  • TypeError: 'numpy.float64' object cannot be interpreted as an integer
    报错内容:Traceback(mostrecentcalllast):File"C:\Users\xuan\.conda\envs\pytorch1-6\lib\site-packages\scipy\sparse\_sputils.py",line225,inisintlikeoperator.index(x)TypeError:'numpy.float64'objectcannotbeinterpre......
  • 浅谈(0,eval)('window')
    浅谈(0,eval)('window')最近研究qiankun源码,在import-html-entry包中看到这个,一脸懵,研究了一下,记录一下。参考了这篇博客这个干啥用的 //通过这种方式获取全局window,因为script也是在全局作用域下运行的,所以我们通过window.proxy绑定时也必须确保绑定到全局window上......
  • The plugin distribution bundles IDE packages 'com.intellij.uiDesigner.core',
    错误描述:TheplugindistributionbundlesIDEpackages'com.intellij.uiDesigner.core','com.intellij.uiDesigner'.BundlingIDEpackagesisconsideredbadpracticeandmayleadtosophisticatedcompatibilityproblems.Considerexcludingthe......
  • LeetCode 203. 移除链表元素
    题目链接:LeetCode203.移除链表元素本题是一个经典的单链表删除元素的题目,主要注意的有两点:如果删除的元素是不是头元素,则直接p.Next=p.Next.Next即可如果删除的元素是头元素,则需要进行单独的处理forhead!=nil&&head.Val==val{head=head.Next}ifh......
  • mysql8.0 使用navicat报caching_sha2_password' cannot be loaded解决方法
    安装8.0版本的mysql后,使用navicat连接时,报caching_sha2_password'cannotbeloaded的异常。原因为:8.0版本的mysq用户密码加密方式为caching_sha2_password,navicat暂不支持,需要修改下mysql的加密方式。解决过程:#(不建议用root进行连接)#1.登陆mysqlmysql-uroot-p#2.查看......
  • mv: cannot move '/usr/local/lib/R/site-library/00LOCK-Biobase/00new/Biobase' to
     01、安装Biobase 包的时候遇到如下问题mv:cannotmove'/usr/local/lib/R/site-library/00LOCK-Biobase/00new/Biobase'to'/usr/local/lib/R/site-library/Biobase':Permissiondenied 02、解决方法在R终端执行如下命令:Sys.setenv(R_INSTALL_STAGED=FALSE)......
  • VeriSilicon's Vivante® Neural Network Processor (NPU) IP
    高度可扩展、可编程的计算机视觉和人工智能处理器 芯原Vivante的神经网络处理器(NPU)IP是高度可扩展、可编程的计算机视觉和人工智能处理器,支持终端、边缘端及云端设备的人工智能运算升级。VivanteNPUIP可满足多种芯片尺寸和功耗预算,是具成本效益的优质神经网络加速引擎解决......
  • Failed to auto-configure a DataSource: 'spring.datasource.url' is not specified
    导入一个新的springbootmaven项目启动一直报这个错,查出来的答案都说是加注解把数据库扫描给排除掉,这种方式其实有点鸵鸟,项目原先是没问题的,现在导入到自己的环境启动不起来,那肯定是不能去改动代码的。排查了一遍,发现是项目中的resources文件没有指定成资源文件,所以找不到数据库......
  • STM32单片机引脚要职能配置为输入或者输出模式,并不能像51一样准双向,那么如何进行但总
    如题随便找个端口举例对应的程序为 难道需要写之后立即初始化为输入?然后赶紧读?然后再赶紧初始化为输出?再往外写?是的,还真他妈就是这么傻逼的操作 ......