首页 > 其他分享 >2、jvm虚拟机垃圾回收机制

2、jvm虚拟机垃圾回收机制

时间:2023-12-26 17:37:52浏览次数:34  
标签:jvm 虚拟机 回收 永久 线程 垃圾 JVM 内存

一、首先了解一下堆栈内存

1、jvm内存结构

 

 

从上图可以看出,整个JVM内存是由栈内存、堆内存和永久代构成。

年轻代(New generation) = eden + s0 + s1
堆内存 = 年轻代 + 老年代(Old generation)
JDK1.8以前: JVM内存 = 栈内存 + 堆内存 + 永久代
JDK1.8以后: 由元空间取代了永久代,元空间并不在JVM中,而是使用本地内存。因此JVM内存 = 栈内存 + 堆内存

栈内存归属于单个线程,也就是每创建一个线程都会分配一块栈内存,而栈中存储的东西只有本线程可见,属于线程私有。 栈的生命周期与线程一致,一旦线程结束,栈内存也就被回收。 栈中存放的内容主要包括:8大基本类型 + 对象的引用 + 实例的方法

 

堆内存是由年轻代和老年代构成,JDK1.8以后,永久代被元空间取代,使用直接内存,不占用堆内存。堆内存是Jvm中空间最大的区域,所有线程共享堆,所有的数组以及内存对象的实例都在此区域分配。我们常说的垃圾回收就是作用于堆内存。

Eden区占大容量,Survivor两个区占小容量,默认比例是8:1:1

永久代这个区域是常驻内存的。用来存放JDK自身携带的Class对象。Interface元数据,存储的是Java运行时的一些环境。这个区域不存在垃圾回收!关闭虚拟机就会释放这个区域的内存。 当发现系统中元空间占用内存比较大时,排查方向是否加载了大量的第三方jar包,Tomcat部署了太多应用,大量动态生成的反射类等。

 

翻译

搜索

复制

标签:jvm,虚拟机,回收,永久,线程,垃圾,JVM,内存
From: https://www.cnblogs.com/mmdln/p/17928865.html

相关文章

  • linux虚拟机固定ip
    1、查看宿主机IP信息在windows宿主机上,键盘输入win+r,输出cmd,打开终端命令行:输入ipconfig/all,查看宿主机IP信息: 2、修改Linux虚拟机的配置文件Linux虚拟机上打开网络配置文件:cd/etc/sysconfig/network-scripts/viifcfg-ens33 修改配置文件,输入字母 i ,进入编辑模式,做如下修改......
  • 【JVM调优】内存溢出+CPU占用过高:问题排查+解决方案+复盘
    前言最近刚上线了一款社交项目,运行十多天后(运营持续每天推量),发现问题:系统OOM(资源不能被释放)导致服务器频繁且长时间FGC导致服务器CPU持续飚高日志中内存溢出:java.lang.OutOfMemoryError:Javaheapspace程序十分卡顿,严重影响用户使用从以下方面,为大家分享此次问题解决流程问题出......
  • 虚拟机联网
    虚拟机联网:1.检查虚拟机硬件是否为NAT方式 2.登陆Ubuntu系统,右上角设置设置面板左侧,`网络`检查IPv4/DHCP设置(默认设置即可,不需要更改) 3.检查IP地址演示环境IP:192.168.26.1284.访问外网测试pingw......
  • 垃圾回收机制
    一般说来,我们要解决三个问题:1、回收哪些内存?2、什么时候回收?3、如何回收?  首先我们来看Java的四种引用类型: 强引用:代码中普遍存在的,只要强引用还存在,垃圾收集器就不会回收掉被引用的对象。 软引用:SoftReference,软引用是介于强引用和弱引用之间的引用类型。当系统内......
  • 软件测试/测试开发|Ubuntu虚拟机打不开Ubuntu software
    前言在我们安装完Ubuntu虚拟机之后,我们可以在虚拟机上安装我们所需的软件,比如我们经常会用到的pycharm和vscode等软件,都可以在Ubuntu的UbuntuSoftware中进行安装,但是在进行安装时,可能会出现打不开UbuntuSoftware的情况,本文就来介绍一下解决打不开这个软件市场的问题的方法。......
  • Windows Server 2016 OVF, updated Dec 2023 (sysin) - VMware 虚拟机模板
    WindowsServer2016OVF,updatedDec2023(sysin)-VMware虚拟机模板2023年12月版本更新,现在自动运行sysprep,支持ESXiHostClient部署请访问原文链接:https://sysin.org/blog/windows-server-2016-ovf/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org现在......
  • Windows Server 2019 OVF, updated Dec 2023 (sysin) - VMware 虚拟机模板
    WindowsServer2019OVF,updatedDec2023(sysin)-VMware虚拟机模板2023年12月版本更新,现在自动运行sysprep,支持ESXiHostClient部署请访问原文链接:https://sysin.org/blog/windows-server-2019-ovf/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgWind......
  • Windows Server 2022 OVF, updated Dec 2023 (sysin) - VMware 虚拟机模板
    WindowsServer2022OVF,updatedDec2023(sysin)-VMware虚拟机模板2023年12月版本更新,现在自动运行sysprep,支持ESXiHostClient部署请访问原文链接:https://sysin.org/blog/windows-server-2022-ovf/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org现在......
  • winscp连接windows虚拟机,显示被拒绝
     用户名密码正确的情况下,提示:网络错误,连接被拒绝1. 可以ping 通2. 关闭了防火墙,3. 检查是否开启ssh服务  https://blog.csdn.net/weixin_72910567/article/details/132414264检查方法:输入命令在PowerShell(管理员)模式下操作左下搜索框中输入 输入命令Get-Win......
  • Vmware17虚拟机安装windows10系统
    不要去什么系统之家之类的下载镜像,会不好安装,镜像被魔改过了,适合真实物理机上的系统在PE里安装系统,建议下载原版系统ISO文件安装vmware17pro下载地址https://dwangshuo.jb51.net/202211/tools/VMwareplayer17_855676.rar解压后打开这个就可以了,改过的安装器,你懂的VMware-Worksta......