JVM-G1讀書筆記-1-束語
束語算法
- 並行
- 計算機:指兩個或多個事件在同一時刻發生,在現代計算機中一般指多臺處理器上同時處理多個任務。
- JVM:指多個垃圾回收相關線程在操做系統上併發運行(垃圾回收線程工做->***ParTask會STW)
- 併發
- 計算機:指兩個或多個事件在同一時間間隔內發生,在現代計算機中一臺處理器「同時」處理多個任務,那麼這些任務會交替運行,從處理器角度看任務只能串行執行,從用戶角度看這些任務是「並行」執行,其實是處理器根據必定策略不斷地切換執行這些「並行」的任務。
- JVM:指垃圾回收相關的線程併發運行(如啓動多個線程),同時折現線程會和Java應用程序併發運行(***Concurrent***Thread)
- Stop-the-world
- Safepoint
- 安全點指JVM在執行須要STW操做,但並非任何線程在任何地方都能進入STW。
- 咱們正在執行一段代碼時,線程如何可以中止?安全點的目的是,當前線程進入到安全點時,線程會主動中止。
- Mutator
- 指咱們的Java應用線程。
- Mutator含義時可變的,在這裏的含義時由於線程運行致使了內存的變化
- GC中一般須要STW才能使Mutator暫停
- Remember Set
- 記憶集簡稱RSet
- 主要記錄不一樣代際對象的引用關係
- Evacuation
- 轉移、撤退或者回收簡稱Evac
- G1中指的是發現活躍對象,並將對象複製到新地址的過程
- Reclaim
- 回收一般指的是分區對象已經死亡或者已經完成Evac,分區能夠被JVM再次使用
- Closure
- 閉包在JVM中是一種輔助類,相似於咱們已知的iterator,他一般提供了對內存的訪問
- GC Root
- 垃圾回收的根
- 在JVM的垃圾回收過程當中,須要從GC Root出發標記活躍對象,確保正在使用的對象在垃圾回收後都是存活的
- Root Set
- 根集合
- 在JVM的垃圾回收過程當中,須要從不一樣的GC Root出發,這些GC Root有線程棧、monitor列表、JNI對象等
- Full GC
- 整個堆的垃圾回收動做,簡稱FGC
- 一般FGC是串行的,G1的FGC不只有串行實現,在JDK10中還有並行實現
- Remark
- 再標記
- 指的是併發標記算法中,處理完併發標記後,須要更新併發標記中Mutator變動的引用,這一步須要STW
歡迎關注本站公眾號,獲取更多信息