首页 > 其他分享 >GC种类

GC种类

时间:2023-06-23 17:56:49浏览次数:31  
标签:触发 Old FullGC GC 种类 youngGC Minor

youngGC(Minor GC):

对新生代垃圾回收。新建对象一般放在新生代的Eden区进行分配,如果Eden区没有足够的空间就会触发youngGC。youngGC出发频率很频繁,回收速度也很快

FullGC:

回收整个新生代、老年代、永久代无用对象。FullGC较YoungGC stw时间更长至少10倍以上。

FullGC触发条件:

①在代码中调用System.gc()方法会建议JVM进行Full GC,但是注意这只是建议,JVM执行不执行是另外一回事儿,不过在大多数情况下会增加Full GC的次数,导致系统性能下降,一般建议不要手动进行此方法的调用,可以通过-XX:+ DisableExplicitGC来禁止RMI调用System.gc。

②YoungGC前会检查老年代最大可用的连续空间是否大于新生代所有对象总空间,如果小于,则有可能会触发FullGC

③元空间不足时会进行扩容,当扩容到-xx:metaSpacesize参数指定值也会触发FullGC

Major GC/Old GC

老年代会在两种情况下触发 Old GC:一是开启分配担保机制,在Minor GC前,根据历次 Minor GC 后进入老年代的对象大于当前老年代内存大小,判断 Minor GC 有风险,则会触发 Old GC;二是 Minor GC 后剩余对象太多,老年代放不下了也会触发 Old GC。

标签:触发,Old,FullGC,GC,种类,youngGC,Minor
From: https://www.cnblogs.com/enhance/p/17499436.html

相关文章

  • AGC016
    sta老师的曲绘风格确实很科幻。艺术番茄。上边挂着个数分学习笔记确实很怪。赶紧把这一章完结了。我之前写的题解没了,还得重写一遍。[AGC016A]Shrinking你说的好像挺对的。#include<cstdio>#include<algorithm>#include<cstring>#include<bitset>#include<iostrea......
  • JVM内存模型及CMS、G1和ZGC垃圾回收器详解
    1.JVM内存模型JVM内存模型主要指运行时的数据区,包括5个部分,如下图所示。栈也叫方法栈,是线程私有的,线程在执行每个方法时都会同时创建一个栈帧,用来存储局部变量表、操作栈、动态链接、方法出口等信息。调用方法时执行入栈,方法返回时执行出栈。本地方法栈与栈类似,也是用来......
  • 【2】springCloud 2021 中间件基本使用方法
    RabbitMQBroker异步调用好处:吞吐量提升:无需等待订阅者处理完成,响应更快速故障隔离:服务没有直接调用,不存在级联失败问题调用间没有阻塞,不会造成无效的资源占用耦合度极低,每个服务都可以灵活插拔,可替换流量削峰:不管发布事件的流量波动多大,都由Broker接收,订阅者可以按照自......
  • SpringCloud Alibaba入门1-创建多模块工程
    一、创建父项目创建一个Maven的父项目,命名为mymall用于管理子项目。项目创建完成后,删除src目录和在pom.xml文件里面设置packing的方式为pom,管理其他子模块的依赖。删除之后的项目结构为:二、创建子module在父项目上右键,新建module,命令为mymall-common,然后创建子模块创建子模块成......
  • SpringCloud依赖问题:spring-cloud-starter-eureka-server 和 spring-cloud-starter-ne
    学习SpringCloud微服务时,很多资料上都写的是spring-cloud-starter-eureka-server,结果问题无法正常启动,这是因为与当前的SpringBoot版本不匹配。其实较新的版本应该使用spring-cloud-starter-netflix-eureka-server依赖。PS:SpringCloud的版本不兼容好坑。......
  • go1.6.2 linux/amd64 的一个bug: gcc: 无法识别的选项‘-no-pie’
    如果你的linux是中文版的。即:执行#echo$LANG命令,返回的是zh_CN.UTF-8则会出现这个bug,如果是en_US.UTF-8则没有这个问题。 这个bug的一个例子:#goget-ugithub.com/mattn/go-sqlite3#github.com/mattn/go-sqlite3gcc:无法识别的选项‘-no-pie’虽然会报这......
  • PAGC2023 金帆奖 | 融云三度荣膺「年度优秀出海产品技术服务」奖
    (移步公众号文章点击购买《社交泛娱乐出海作战地图》)6月15日-16日,扬帆出海“第三届产品与增长大会(PAGC)”在广州·广交会展馆召开,融云携一站式全生态出海解决方案参会,与上百展商、7000+ 海内外业界精英一起,“谋变新格局、共塑新标杆”。关注【融云全球互联网通信云】了解更多......
  • CGCN Dataloader
    fromstellargraph.datasetsimportDatasetLoaderclassant_1_4(DatasetLoader,name="ant-1.4",directory_name="ant-1.4",url="",url_archive_format="",expected_files=[],description=&qu......
  • C 语言 GCC 内嵌函数实现 Lambda 表达式
    代码({//函数实现函数名称;})#include<stdio.h>#include<malloc.h>#defineaction_lambda(function_body)\({voidlambda_funcfunction_bodylambda_func;})#definefunc_lambda(return_type,function_body)\({return_typelambda_funcfunction_b......
  • AIGC:入门简介
    当提到AIGC(ArtificialIntelligenceandGeneralComputing,人工智能与通用计算)时,我们涉及到了两个重要的领域:人工智能和通用计算。本文将带您了解AIGC的基础知识,从入门到精通。第一部分:入门什么是人工智能(AI)?人工智能是一种模拟人类智慧的科学和技术。它涉及构建智能系统,使其......