一張自增表里面總共有 7 條數(shù)據(jù),刪除了最后 2 條數(shù)據(jù),重啟 mysql 數(shù)據(jù)庫,又插入了一條數(shù)據(jù),此時 id 是幾?
Java8版本的Hotspot JVM,默認情況下使用的是并行垃圾收集器(Parallel GC)。其 他廠商提供的JDK8基本上也默認使用并行垃圾收集器。Java11的默認垃圾收集器是什么? Java9之后,官方JDK默認使用的垃圾收集器是G1。
常見的垃圾收集器有哪些? 常見的垃圾收集器包括:
串行垃圾收集器:‐XX:+UseSerialGC
并行垃圾收集器:‐XX:+UseParallelGC CMS
垃圾收集器:‐XX:+UseConcMarkSweepG G1
垃圾收集器: ‐XX:+UseG1GC
什么是串行垃圾收集? 就是只有單個worker線程來執(zhí)行GC工作。
什么是并行垃圾收集? 并行垃圾收集,是指使用多個GC worker線程并行地執(zhí)行垃圾收集,能充分利用多核 CPU的能力,縮短垃圾收集的暫停時間。除了單線程的GC,其他的垃圾收集器,比如PS,CMS, G1等新的垃圾收集器都使233用了多個線程來并行執(zhí)行GC工作。
什么是并發(fā)垃圾收集器? 并發(fā)垃圾收集器,是指在應用程序在正常執(zhí)行時,有一部分GC任務,由GC線程在應用線程一起并發(fā)執(zhí)行。例如CMS/G1的各種并發(fā)階段。
什么是增量式垃圾收集? 首先, G1的堆內(nèi)存不再單純劃分為年輕代和老年代,而是劃分為多個(通常是 2048個),可以存放對象的小塊堆區(qū)域(smaller heap regions)。 每個小塊,可能一會被定義成Eden區(qū),一會被指定為Survivor區(qū)或者Old區(qū)。這樣劃分之后,使得G1不必每次都去回收整個堆空間,而是以增量的方式來進行處理:每次只處理一部分內(nèi)存塊,稱為此次 GC 的回收集(collection set)。 下一次GC時在本次的基礎上,再選定一定的區(qū)域來進行回收。增量式垃圾收集的好處是大大降低了單次GC暫停的時間。