jprofile查看hprof檔案[轉]

來源:互聯網
上載者:User

標籤:

用jprofile開啟hprof檔案,查看記憶體泄露情況,有幾個常用的功能說明一下:
工具下載:到官網下載jprofile7.0.1 64位的。再申請一個註冊號,註冊號的申請好像是一個郵件只能用一次。
1、開啟hprof檔案:進入classes視圖,根據(instance count和Size)基本可以確定哪個類的對象出現問題。比如(java.util.LinkedList$Entry類有2731062個執行個體)。
2、根據常識,應該java.util.LinkedList類有個對象的Size應該很大。
3、查看java.util.LinkedList,右鍵->use Selected Instance
4、選擇Outgoing reference 視圖(可以查看對象擁有的其他物件控點,也就是對象屬性)。看Retained size列(或者size屬性)(有的時候Retained size不靈光),看大小就能確定是哪個對象記憶體溢出了。
5、找到對應的對象,右鍵->use Selected Instance
6、選擇Incoming refrences視圖(該視圖顯示哪些對象擁有本對象的控制代碼),在這個視圖下有個show Paths To GC Root的按鈕,點擊,基本能確定我們哪開代碼有問題了。

jprofile查看hprof檔案[轉]

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.