JVM垃圾回收算法和回收器总结

JVM垃圾回收算法和回收器总结,第1张

JVM垃圾回收算法和回收器总结

垃圾回收算法可以分为4类:复制收集算法,标记清除算法,标记整理算法,引用计数算法.
jdk1.8默认--Parallel Scavenge(新生代)+Parallel Old(老年代).
新生代/老年代回收都会导致全程stw.  --younggc/oldgc/fullgc 都会全程stw.
gc线程的工作内存--标记存活线程,清除非存活线程.

新生代的收集器--        新生代都是 复制收集算法                                      
serial--单线程收集器.                                             --之前cpu算稀缺资源,现在cpu过剩,就不用serial了,改用parNew.
parNew--多线程收集器.                                         --stw时间最短.         
parallel Scavenge--多线程 高吞吐量 收集器.          --吞吐量优先.

吞吐量--用户线程执行的总时间/(用户线程执行的总时间+GC线程执行的总时间)


老年代的收集器-- 除了G1是标记整理算法,其他都是标记清除算法.
serial old--单线程--全程stw.                                  --之前cpu算稀缺资源,现在cpu过剩,就不用serial old了,改用cms.
CMS--多线程--全程stw.                                         --stw时间最短.
parallel Old--多线程--全程stw.                              --吞吐量优先.

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5709405.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存