当前位置: 首页 > news >正文

【JVM】JVM垃圾收集器

文章目录

  • 什么是JVM垃圾收集器
  • 四种垃圾收集器(按类型分)
    • 1.串行垃圾收集器(效率低)
    • 2.并行垃圾收集器(JDK8默认使用此垃圾回收器)
    • 3.CMS(并发)垃圾收集器(只针对老年代垃圾回收的)

什么是JVM垃圾收集器

垃圾收集器是负责执行垃圾回收的组件,它们用于管理Java程序运行时的内存分配和释放。垃圾收集器的主要任务是自动回收不再使用的内存对象,并将内存空间重新回收以供程序继续使用。

四种垃圾收集器(按类型分)

1.串行垃圾收集器(效率低)

Serial和Serial Old串行垃圾收集器,是指使用单线程进行垃圾回收,堆内存较小,适合个人电脑

  • Serial 作用于新生代,采用复制算法
  • Serial Old 作用于老年代,采用标记-整理算法

垃圾回收时,只有一个线程在工作,并且java应用中的所有线程都要暂停(STW),等待垃圾回收的完成。

在这里插入图片描述

2.并行垃圾收集器(JDK8默认使用此垃圾回收器)

Parallel New和Parallel Old是一个并行垃圾回收器,JDK8默认使用此垃圾回收器

  • Parallel New作用于新生代,采用复制算法
  • Parallel Old作用于老年代,采用标记-整理算法

垃圾回收时,多个线程在工作,并且java应用中的所有线程都要暂停(STW),等待垃圾回收的完成。(通过并行执行垃圾回收以提高性能)

相比较与串行垃圾收集器,并行垃圾收集器无非就是多开写线程来做垃圾回收,其实同样也要暂停所有正在执行的线程,只不过在多个线程并行回收效率比串行高

在这里插入图片描述

3.CMS(并发)垃圾收集器(只针对老年代垃圾回收的)

CMS全称 Concurrent Mark Sweep,是一款并发的、使用标记-清除算法的垃圾回收器,该回收器是针对老年代垃圾回收的,是一款以获取最短回收停顿时间为目标的收集器,停顿时间短用户体验就好

最大特点是在进行垃圾回收时,应用仍然能正常运行。
在这里插入图片描述

http://www.lryc.cn/news/120900.html

相关文章:

  • StarGANv2: Diverse Image Synthesis for Multiple Domains论文解读及实现(一)
  • Go Gin 中使用 JWT
  • AWS中Lambda集成SNS
  • Mac下⬇️Git如何下载/上传远程仓库
  • linux 命令--常用关机命令
  • ttf-dejavu fontconfig字体
  • Open3D点云数据处理(十九):最小二乘直线拟合(矩阵方程法)
  • 数据库事务ACID介绍
  • SM8650 qcxserver.c STRM_Initialize
  • 适配器模式-java实现
  • 【elasticSearch系】3.完整搭建详尽版elk
  • 代码随想录day04
  • [Realtek] WPA_SUPPLICANT + WPA_CLI使用指南
  • # ⛳ Docker 安装、配置和详细使用教程-Win10专业版
  • Linux 教程
  • 图论——最短路算法
  • 在项目中增加网络加载需要考虑什么?
  • 阿里云服务器部署RabbitMQ流程
  • 青大数据结构【2014】
  • Ansible Playbook快速部署一主多从MySQL集群
  • 27.Netty源码之FastThreadLocal
  • linux下离线安装docker
  • SQL server 异地备份数据库
  • 高并发系统设计要点
  • Redis 拒绝服务漏洞(CVE-2023-28856)修复处理
  • Android保存网页的方法
  • P2P 网络,PING程序。
  • OPENCV C++(十二)模板匹配
  • 【配置环境】Linux下安装MySQL
  • 【100天精通python】Day30:使用python操作数据库_数据库基础入门