一、四大引用
強:直到oom都不會回收
軟:gc掃到后 不一定回收,內(nèi)存不足
弱:gc掃到后就回收,與引用隊列綁定使用(WeakReference、ReferenceQueue)
虛
二、LeakCanery原理
三個列表:引用列表、觀察列表、懷疑列表
初始狀態(tài):
[圖片上傳失敗...(image-891a11-1644571631013)]
沒泄露:引用隊列不為空,移除觀察列表
[圖片上傳失敗...(image-ec468e-1644571631013)]
泄露了:引用隊列為空
[圖片上傳失敗...(image-13f9d8-1644571631013)]
LeakCanery原理:
[
image
內(nèi)存泄露.mp4
14.9 MB](https://app.yinxiang.com/shard/s27/res/60b799b9-c8f8-49f1-ab5f-55873d1b3425/%E5%86%85%E5%AD%98%E6%B3%84%E9%9C%B2.mp4)
三、GcRoot、可達性分析
GCroot不可以回收
[圖片上傳失敗...(image-bf3103-1644571631012)] [圖片上傳失敗...(image-b1db73-1644571631013)]