一、 弱分代假說(Weak Generational Hypothesis)與記憶體佈局
JVM 將 Heap劃分為不同區域的理論基礎來自於兩條經驗法則:
傳統分代佈局結構:
二、 判斷物件生死:GC Roots 可達性分析演算法(Reachability Analysis)
Java 徹底淘汰了老舊的「引用計數法(Reference Counting)」,因為它無法解決物件之間相互循環引用的問題。
四、 G1 收集器(Garbage-First):化整為零的 Region 架構
G1 徹底打破了物理上連續的年輕代與老年代劃分,將整個 Heap 均勻切分為數千個大小相等的獨立單元——Region(1MB ~ 32MB,大小為 2 的整數冪)。
五、 新一代極致低延遲:ZGC(Z Garbage Collector)架構突破
在JDK 21中,Generational ZGC已正式成為推薦特性,實現了在TB級巨大堆積記憶體 下,STW停頓時間壓制在1毫秒以內 的工業奇蹟。