觸發fullgc的條件?
heap區被佔滿,需要**heap空間, 就會執行fullgc
物件生命週期經歷了young(eden, i , ii )到達old
fullgc是對old和young全部gc
此時jvm處於凍結狀態
因此要盡可能的把gc方法young代
所以就應該縮短物件生命週期,避免物件被新增到old代。
縮短物件生命週期
3 . 縮短物件生命週期的方法?
避免大方法
避免乙個變數跨方法呼叫,且被不同方法呼叫。
物件不用了要及時的清空物件, 比如引用變數a,清空a, a=null
頻繁 full gc 處理方式
線上服務 full gc 時,使用下面方式查詢問題 jmap dump live,format b,file dump.hprof x其中 為程序號 wget 修改配置引數,按需要修改使用記憶體大小 startup plugins org.eclipse.equinox.launcher 1.2.0...
快取 避免頻繁操作
int flag 0 int seconds 8 if library.datacache.getcache lock userid null 判斷是否鎖定 library.datacache.setcache lock userid,1,seconds 處理 library.datacache.r...
避免頻繁請求操作
防抖 適用於input輸入框格式驗證 聯絡詞等。待使用者停止輸入一段時間再發生請求,避免頻繁請求。實現細節 debounce返回乙個function,關鍵點在於cleartimeout,如果使用者不停輸入,就會一直執行cleartimeout,導致fn無法執行。只有使用者停止x時間後,才會開始執行f...