是否應該完全避免 Full GC

時間 2021-05-11 16:25:54

1樓:知微

說下自己的見解吧,首先是full gc 的場景

1.Serial GC演算法:Serial Young GC + Serial Old GC (實際上它是全域性範圍的Full GC);

2.Parallel GC演算法:Parallel Young GC + 非並行的PS MarkSweep GC / 並行的Parallel Old GC(這倆實際上也是全域性範圍的Full GC)

3.CMS演算法:ParNew(Young)GC + CMS(Old)GC (piggyback on ParNew的結果/老生代存活下來的object只做記錄,不做compaction)+ Full GC for CMS演算法(併發失敗時觸發)。

我覺得對於1,2來說full gc是正常的,3來說配置好老年代占用收集比例最好的效果可以永遠不觸發full gc

2樓:Ted Mosby

(1)首先取決於你應用的SLA(Service Level Agreement),問一問它是不是延時敏感或吞吐量敏感;

(2)從使用JVM的角度來說的總原則是盡量避免Full GC,雖然無法完全避免。

3樓:太上玄元道君

這樣說吧,應該避免但是無法避免。

full GC是stop the world級別的。此時虛擬機器內所有的執行緒停止(當然除了GC,,,,),此時是無響應的,影響不用說了啊?所以為了提公升使用者體驗,這個是應該避免的。

無法避免是因為總會有存活能力強的物件(或者說大物件)進入老年代,老年代肯定是會滿的(除非你記憶體無限大)。此時就必須觸發full GC了

裝修可以完全避免甲醛嘛?

甲醛屠戶 首先,裝修前的設計有合理的方案。在設計如何裝飾時,房子應該具有足夠的去除甲醛環保意識。我們大多數人都知道,裝修完成後,甲醛會產生 疊加效應 即甲醛的濃度都在整個空間。甲醛釋放源的釋放量是一起確定的,這個決定不是取平均值而是加起來的總和,也就是說我們要在設計時間中做兩個計算 一 好好計算承載...

是不是不可能完全避免迴圈定義?

袁巨集 不是很熟悉範疇論,所以單就任何乙個有意義的系統,來談談對迴圈定義的理解。顯然,任何乙個系統都需要符號 語言進行表述。要使得整個系統具有意義,則系統的組成部分也需要意義。由此,我們總需要對符號進行定義,或者說,對其意義進行界定。如果每乙個符號的意義都只能通過別的符號來界定,那麼很明顯,我們只能...

引體向上能完全避免二頭肌發力麼?

不可能,引體向上有屈肘的動作,二頭其中乙個功能就是屈曲肘關節。並不能,引體向上並不是孤立的單關節運動,而是上半身很棒的復合運動 不知道精確麻醉二頭肌之後能不能做引體向上 即使你吊在單槓上不動,二頭肌也是發力的,何況做引體向上 引體向上本來就是鍛鍊多肌肉群的復合運動,想單練某塊肌肉請選擇器械 在校期間...