JVM-CMS

when

堆大小要求为4-8G

原理

初始标记:执行CMS线程->STW,标记GC Root直接关联的对象->低延迟

并发标记:执行CMS线程和业务线程,从GC Root直接关联的对象开始遍历整个对象图

重新标记:执行CMS线程->STW,通过三色标记修正并发标记期间发生变化的对象

并发清理:执行CMS线程清理垃圾

并发重置:

面试题

cms有哪几个阶段?

初始标记

并发标记

重新标记

并发清理

cms有哪几个阶段不需要stw?

不需要stw->业务线程也在运行->2 4

cms有哪几个阶段需要stw?

需要stw->业务线程不执行->1 3

相关推荐
一个小白开发1 小时前
ip获取城市省份信息
java·tcp/ip
爱学习的小鱼gogo1 小时前
python 矩阵中寻找就接近的目标值 (矩阵-中等)含源码(八)
开发语言·经验分享·python·算法·职场和发展·矩阵
豆沙沙包?1 小时前
2025年--Lc170--H289. 生命游戏(矩阵)--Java版
java·游戏·矩阵
冬夜戏雪1 小时前
[学习日记][springboot 1-7][leetcode 6道]
java·开发语言·学习
讓丄帝愛伱1 小时前
idea 中 mapper.xml黄线警告怎么去掉
java·intellij-idea
红纸2811 小时前
Subword算法之WordPiece、Unigram与SentencePiece
人工智能·python·深度学习·神经网络·算法·机器学习·自然语言处理
桦说编程1 小时前
线程池拒绝策略避坑:谨慎使用抛弃策略,可能导致系统卡死
java·后端
奋斗的小monkey1 小时前
Java微服务实战:从零搭建电商用户服务系统
java·spring boot·微服务·nacos·电商系统·redis缓存
菜鸟plus+1 小时前
URL 设计
java
星秀日1 小时前
框架--MyBatis
java·开发语言·mybatis