Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android 內存分析工具 - LogCat GC

Android 內存分析工具 - LogCat GC

編輯:關於Android編程


D/dalvikvm: , , ,

一、GC_Reason 觸發垃圾回收的回收的集中原因:

類型 描述 GC_CONCURRENT 內存使用將滿時,並發的進行垃圾回收。 GC_FOR_MALLOC 當內存已滿應用嘗試分配內存時會出觸發垃圾回收,所以系統會停止應用進行垃圾整理 GC_HPROF_DUMP_HEAP 當創建HPROF文件分析內存時觸發垃圾收集。 GC_EXPLICIT 顯示的垃圾收集,例如當你調用gc() (應該避免調用,而是交由系統處理) GC_EXTERNAL_ALLOC 只會在API 10以下版本觸發。新版都只會在Dalvik Heap上分配。


二、Amount freed 回收的內存大小

三、Heap stats 空閒內存比例和(活躍對象總數/內存大小)

四、External memory stats API 10以下內存分配大小

五、Pause time 越大的堆暫停時間越長,並發會顯示兩個暫停:一個是回收開始時間,另外一個是回收結束時間


例子: D/dalvikvm(27235): GC_FOR_ALLOC freed 836K, 27% free 9653K/13116K, paused 101ms, total 104ms
LOG信息 描述 freed 836K 此次回收836K 27% free 可用內存空間27% 9653K/13116K 活躍對象與總大小具體指 paused 101ms 暫停進行垃圾回收用時101ms total 104ms 總用時104ms
 
其他 external 0K/0K,表示可用外部內存/外部內存總量 paused 2ms+2ms,第一個時間值表示markrootset的時間,第二個時間值表示第二次mark的時間。 如果觸發原因不是GC_CONCURRENT,這一行為單個時間值,表示垃圾收集的耗時時間。
可以通過在LogCat通過 “GC_” 關鍵字 + TAG 兩項過濾

參考資料: https://developer.android.com/tools/debugging/debugging-memory.html#LogMessages

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved