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

相关推荐
小鱼在乎7 分钟前
动态规划---最长回文子序列
算法·动态规划
xiaobai12 311 分钟前
二叉树的遍历【C++】
开发语言·c++·算法
Freak嵌入式18 分钟前
全网最适合入门的面向对象编程教程:50 Python函数方法与接口-接口和抽象基类
java·开发语言·数据结构·python·接口·抽象基类
前端小马28 分钟前
解决IDEA出现:java: 程序包javax.servlet不存在的问题
java·servlet·intellij-idea
吱吱鼠叔36 分钟前
MATLAB数学规划:2.线性规划
算法·机器学习·matlab
声学黑洞仿真工作室43 分钟前
Matlab Delany-Bazley和Miki模型预测多孔材料吸声性能
开发语言·人工智能·算法·matlab·微信公众平台
机器学习之心1 小时前
选址模型 | 基于混沌模拟退火粒子群优化算法的电动汽车充电站选址与定容(Matlab)
算法·选址模型
IH_LZH1 小时前
Broadcast:Android中实现组件及进程间通信
android·java·android studio·broadcast
去看全世界的云1 小时前
【Android】Handler用法及原理解析
android·java
.Net Core 爱好者1 小时前
Redis实践之缓存:设置缓存过期策略
java·redis·缓存·c#·.net