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

相关推荐
洛水水3 分钟前
【力扣100题】31.二叉树的层序遍历
算法·leetcode·职场和发展
君义_noip9 分钟前
CSP-S 2025 入门级 第一轮(初赛) 完善程序(1)
c++·算法·信息学奥赛·初赛·csp 第一轮
洛水水12 分钟前
【力扣100题】41.爬楼梯
算法·leetcode·职场和发展
敲代码的瓦龙24 分钟前
Java?枚举!!!
java·开发语言
NiceCloud喜云34 分钟前
IntelliJ IDEA 保姆级安装 + ClaudeAPI 配置教程
java·开发语言·前端·ide·chrome·docker·intellij-idea
2301_8159019736 分钟前
C#怎么使用协变和逆变 C#泛型中的in和out关键字协变逆变是什么意思怎么用【语法】
jvm·数据库·python
孙69034237 分钟前
swf 图片转 pdf
java·后端
用户46825574591338 分钟前
Spring AI MCP 实战:tools/list 启动快照陷阱与完整解法
java
m0_4636722040 分钟前
SQL优化SQL关联查询中的排序字段_减少临时空间占用与内存开销
jvm·数据库·python
吴声子夜歌41 分钟前
Java——EnumMap和EnumSet
java·enumset·enummap