无码色偷偷亚洲国内自拍_国产男女性潮高清免费网站_69SEX久久精品国产麻豆_日本高清在线一区二区三区

千鋒教育-做有(you)情懷、有(you)良(liang)心(xin)、有(you)品質的職業教育機構

當前(qian)位置:首頁  >  IT面試題  >  大數據面試題  >  正文

垃圾回收機制(算法原理)

來源:千鋒教育
發布時間:2022-09-26 11:43:34
分享

  引用計(ji)數法:對象每被引用一次就+1,為0時回收(shou),速度很快但(dan)是無法識別循環引用

  標記清除法(fa):遍歷所有(you)對(dui)象(xiang),標記沒(mei)被引用(yong)的,然(ran)后(hou)統(tong)一清除。

  缺點是效率(lv)低、清理后內(nei)存(cun)不(bu)連(lian)續。

  復(fu)制清(qing)(qing)除法:將內(nei)存(cun)(cun)分為兩塊(kuai),其中一塊(kuai)寫滿(man)后(hou),遍歷對象(xiang)標記有用的(de)對象(xiang)復(fu)制到另一塊(kuai),然后(hou)把這(zhe)一塊(kuai)清(qing)(qing)理,這(zhe)樣復(fu)制的(de)內(nei)容很少而且(qie)內(nei)存(cun)(cun)始終連續,缺(que)點(dian)是始終需要有一塊(kuai)內(nei)存(cun)(cun)空出來用于復(fu)制。

  標(biao)記整理法:遍(bian)歷出(chu)有用的(de)對(dui)象,將這(zhe)些對(dui)象全(quan)都向一端移動(dong),然(ran)后清理其(qi)它空間,一樣(yang)能騰出(chu)連(lian)續的(de)內存,但是(shi)移動(dong)對(dui)象的(de)成本比復(fu)制大(da)得多。

  GC采用(yong)分代收集(ji)法:年輕(qing)代采用(yong)復制清除(chu)法,每當(dang)eden滿時,就遍(bian)歷出eden和幸(xing)(xing)存者1區的有用(yong)對象復制到(dao)幸(xing)(xing)存者2區,然后(hou)清空重新寫起。

  因此無論(lun)何(he)時一定有一個(ge)幸存(cun)者(zhe)區(qu)是空的。

  老(lao)年(nian)代由(you)于有用的對象(xiang)很多(duo)所(suo)以復制(zhi)成本高,采(cai)用標記(ji)整理(li)法減(jian)少復制(zhi)。

聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。

相關推薦

  • 請列舉幾個常用的Linux命令 man :幫助命令 sudo : 獲取root權限 jps : 查看java進程 ps -ef : 查看進程 ps -aux : 查看進程 netstat -nltcp : 監聽端口 free : 內存查看 top :動態 查看服務器資源信息
  • 單利模式是什么,線程安全嗎? 也就是說通過單例我們可以實現數據的全局訪問,還可以再全局實現功能的調用.單例分成懶漢式和餓漢式,對于懶漢式會有線程安全問題,需要進行同步處理,對于餓漢式不會有線程安全問題,不需要同步.
  • nio和bio的區別,為啥nio好 同步阻塞IO(JAVA BIO/Blocking IO ): 同步并阻塞,服務器實現模式為一個連接一個線程,即客戶端有連接請求時服務器端就需要啟動一個線程進行處理,如果這個連接不做任何事情會造成不必要的線程開銷.
  • threadlocal原理 因為在上面的代碼分析過程中,我們發現如果沒有先set的話,即在map中查找不到對應的存儲,則會通過調用setInitialValue方法返回i,而在setInitialValue方法中,有一個語句是T value = initialValue(), 而默認情況下,init...
  • arrayList和LinkedList的區別 Linkedlist基于鏈表的動態數組,數據添加刪除效率高,只需要改變指針指向即可,但是訪問數據的平均效率低,需要對鏈表進行遍歷。對于新增和刪除操作add和remove,LinedList比較占優勢,因為ArrayList要移動數據。
  • 垃圾回收機制(算法原理) 復制清除法:將內存分為兩塊,其中一塊寫滿后,遍歷對象標記有用的對象復制到另一塊,然后把這一塊清理,這樣復制的內容很少而且內存始終連續,缺點是始終需要有一塊內存空出來用于復制。