一.執行個體
// NOT RESPONDING: com.android.settings (pid 5255)
ANR in com.android.settings (com.android.settings/.SubSettings), time=11135301
Reason: Input dispatching timed out (Waiting because no window has focus but there is a focused application that may eventually add a window when it finishes starting up.)
Load: 20.36 / 20.61 / 19.86
Android time :[2017-11-15 23:21:17.69] [11146.916]
CPU usage from 285704ms to 0ms ago (2017-11-15 23:16:20.372 to 2017-11-15 23:21:06.077) with 99% awake:
分析
(1)NOT RESPONDING: com.android.settings (pid 5255)
設定子產品無反應 PID 5255
(2)38% TOTAL: 24% user + 13% kernel + 0% iowait + 0% softirq
CPU運作正常,說明主線程被BLOCK了,導緻的子產品無反應
(3)"main" prio=5 tid=1 WaitingPerformingGc
com.android.settings等待GC
(4)
Total number of allocations 183578333
Total bytes allocated 10GB
Total bytes freed 10GB
Free memory 2184B
Free memory until GC 2184B
Free memory until OOME 2184B
Total memory 192MB
Max memory 192MB
距離發生OOM還有 2184B,說明有記憶體洩漏,或記憶體使用不合理
記憶體對象18357萬個,GC過程需要掃描這些對象的巨大部分,導緻耗時很久