stop the world是jvm枚舉根節點時一定會發生的,無論是新生代還是老年代。(G1收集器號稱不區分新生代和老年代,但是jdk1.7時尚不穩定)
如果to-survivor不能放下eden和from-survivor的內容,則要把eden和from-survivor中的內容提前根據分配擔保機制放到老年代。
空間分配擔保:發生minor gc以前,首先檢查老年代可用空間是否大於新生代中對象佔用的空間,如果滿足則這次minor gc是安全的。否則是不安全的。對於不安全的minor gc,需要根據jvm是否允許冒險決定執行minor gc還是直接執行full gc。