JVM-面试题

为什么年轻代用复制算法?

因为年轻代存活对象少,复制开销不大

为什么老年代不用复制算法?

因为老年代存活对象多,复制开销大

gc日志有哪些参数?

GC原因

GC前新生代和老年代的大小

什么时候新生代会进入老年代?

age=15

对象大于E区的1/2

s0和s1放不下

G1堆初始大小设置为30M,但是实际运行需要256M,会有什么问题吗?

不会

G1年轻代是动态调整的

有哪些GC,分别用了什么算法?

Serial 年轻代 复制

Serial Old 老年代 标记整理

ParNew 年轻代 CMS 老年代 标记清楚

G1 younggc和mixgc采用复制算法,fullgc采用标记清除

CMS和G1优缺点?

C:并发收集,不需要stw,优化用户体验

相关推荐
2401_85439108几秒前
城镇住房保障:SpringBoot系统功能概览
java·spring boot·后端
hummhumm2 分钟前
Oracle 第29章:Oracle数据库未来展望
java·开发语言·数据库·python·sql·oracle·database
wainyz11 分钟前
Java NIO操作
java·开发语言·nio
工业3D_大熊16 分钟前
【虚拟仿真】CEETRON SDK在船舶流体与结构仿真中的应用解读
java·python·科技·信息可视化·c#·制造·虚拟现实
喵叔哟19 分钟前
重构代码之用委托替代继承
开发语言·重构
lzb_kkk25 分钟前
【JavaEE】JUC的常见类
java·开发语言·java-ee
SEEONTIME25 分钟前
python-24-一篇文章彻底掌握Python HTTP库Requests
开发语言·python·http·http库requests
起名字真南44 分钟前
【OJ题解】C++实现字符串大数相乘:无BigInteger库的字符串乘积解决方案
开发语言·c++·leetcode
爬山算法1 小时前
Maven(28)如何使用Maven进行依赖解析?
java·maven
tyler_download1 小时前
golang 实现比特币内核:实现基于椭圆曲线的数字签名和验证
开发语言·数据库·golang