1、stw


什么是stw
Java应用程序所有工作线程就进入了安全点SafePointh后,所有工作线程被挂起,导致java应用程序全局暂停的现象被称为STW.
2、垃圾回收的串行、并行、并发有什么区别

串行回收和并行回收都会stw,并行回收在gc的时候所有cpu也都会stw;
并发回收则在gc时不会stw
3、如何判断垃圾回收器的好坏,性能指标有哪些(为什么选择这种)


4、深度解剖年轻代垃圾回收器原理


关于年轻代满了,如何处理?
答案是:垃圾回收器。
为了提升垃圾回收性能,垃圾回收器分为年轻代回收器和 老年代回收器。

以上原理就是 Serial垃圾回收器,
Serial是1999年发布的,年代最悠久的垃圾收集器,于idk1.3之前就开始使用。特点:
1.分代:年轻代,
2.工作方式:单线程串行回收
3.算法:复制算法
4.性能设计:停顿时间短(响应速度快)
应用场景:
单CPU单核的环境下,适用于Client模式下的年轻代收集器。现在大家只要了解就可以了,现在市面上基本找不到单CPU单核了,所以这个收集器在当今已经过时了,
5、详解年轻代回收器ParNew+Parallel


Parallel高吞吐量的前题是没有用户交互的服务 如定时器

6、深度图解老年代 Serial & Parallel Old垃圾回收器



ps:老年代只有两种算法,一是标记清除算法 二是标记整理算法
7、为什么会出现CMS垃圾回收器?
由于历代垃圾回收器都是串行或独占式回收的,例如前面3个年轻代回收器 + 2个老年代回收器,都是必须停止工作线程后,gc线程才开始垃圾清除。
在这样的大背景下,于2002年JDK1.4.2发布CMS,它是哪个时代第一次实现并发收集器(先对来说),即实现了让垃圾收集线程与用户线程同时工作。
CMS的特色就是停顿时间短(低延迟),停顿时间越短就越适合用户交互的程序,越能提升用户体验,在G1收集器面世之前,CMS基本都是JVM的标配,甚至是现在市面都是很多系统在使用CMS。
讲下串行,并行都是独占执行,,但并发回收是用户线程和gc线程交替执行,3个年轻+2个老年代的回收器