ANR 分析案例一 ANR in com.android.systemui

1 最近看到一个测试的log 如下:查看logcat 的log

01-18 18:04:10.165 697 711 E ActivityManager: ANR in com.android.systemui

01-18 18:04:10.165  697  711 E ActivityManager: PID: 777

01-18 18:04:10.165  697  711 E ActivityManager: Reason: Broadcast of Intent { act=android.intent.action.TIME_TICK flg=0x50000014 (has extras) }

01-18 18:04:10.165  697  711 E ActivityManager: Load: 0.0 / 0.0 / 0.0

01-18 18:04:10.165  697  711 E ActivityManager: CPU usage from 577235ms to 0ms ago (2013-01-18 17:54:32.769 to 2013-01-18 18:04:10.003):

01-18 18:04:10.165  697  711 E ActivityManager:  6.9% 697/system_server: 3.7% user + 3.1% kernel / faults: 14494 minor 95 major

01-18 18:04:10.165  697  711 E ActivityManager:  5.9% 216/surfaceflinger: 3.2% user + 2.7% kernel / faults: 3052 minor

01-18 18:04:10.165  697  711 E ActivityManager:  0.4% 759/adbd: 0.1% user + 0.3% kernel / faults: 13470 minor

01-18 18:04:10.165  697  711 E ActivityManager:  0.3% 464/audioserver: 0.1% user + 0.1% kernel / faults: 151 minor

01-18 18:04:10.165  697  711 E ActivityManager:  0.2% 190/logd: 0% user + 0.1% kernel / faults: 225 minor

01-18 18:04:10.165  697  711 E ActivityManager:  0.1% 153/kworker/u9:1: 0% user + 0.1% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0.1% 6/kworker/u8:0: 0% user + 0.1% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0.1% 233/media.codec: 0.1% user + 0% kernel / faults: 5886 minor 24 major

01-18 18:04:10.165  697  711 E ActivityManager:  0.1% 93/kworker/0:1: 0% user + 0.1% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0.1% 135/kworker/u8:1: 0% user + 0.1% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0.1% 162/kworker/u8:2: 0% user + 0.1% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0.1% 155/mmcqd/1: 0% user + 0.1% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0% 7/rcu_preempt: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0% 30/kconsole: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0% 466/mediaserver: 0% user + 0% kernel / faults: 590 minor 7 major

01-18 18:04:10.165  697  711 E ActivityManager:  0% 37/kworker/1:1: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0% 463/zygote: 0% user + 0% kernel / faults: 2040 minor

01-18 18:04:10.165  697  711 E ActivityManager:  0% 467/netd: 0% user + 0% kernel / faults: 796 minor

01-18 18:04:10.165  697  711 E ActivityManager:  0% 41/cfinteractive: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0% 215/servicemanager: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0% 170/ueventd: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0% 244/kworker/3:1: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0% 1//init: 0% user + 0% kernel / faults: 103 minor

01-18 18:04:10.165  697  711 E ActivityManager:  0% 231/installd: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0% 39/kworker/2:1: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0% 235/media.extractor: 0% user + 0% kernel / faults: 183 minor

01-18 18:04:10.165  697  711 E ActivityManager:  0% 137/irq/150-gslX680: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0% 188/jbd2/mmcblk1p14: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0% 3/ksoftirqd/0: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0% 202/vold: 0% user + 0% kernel / faults: 50 minor

01-18 18:04:10.165  697  711 E ActivityManager:  0% 212/displayd: 0% user + 0% kernel / faults: 3 minor

01-18 18:04:10.165  697  711 E ActivityManager:  0% 14/ksoftirqd/1: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0% 19/ksoftirqd/2: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0% 214/lmkd: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0% 395/kworker/2:1H: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0% 11/watchdog/0: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0% 12/watchdog/1: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0% 17/watchdog/2: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0% 22/watchdog/3: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0% 211/healthd: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  0% 465/cameraserver: 0% user + 0% kernel / faults: 39 minor

01-18 18:04:10.165  697  711 E ActivityManager:  +0% 777/com.android.systemui: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  +0% 791/com.android.settings: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  +0% 811/com.android.inputmethod.latin: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  +0% 830/sdcard: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  +0% 900/kbase_event: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  +0% 1062/android.ext.services: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  +0% 1087/android.process.media: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  +0% 1103/com.android.launcher3: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  +0% 1112/kbase_event: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  +0% 1125/com.android.keychain: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  +0% 1150/com.android.printspooler: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  +0% 1175/kbase_event: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  +0% 1187/com.android.copyfile: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  +0% 1205/com.android.managedprovisioning: 0% user + 0% kernel

01-18 18:04:10.165  697  711 E ActivityManager:  +0% 1221/com.android.onetimeinitializer: 0% user + 0% kernel

从log 中看,发现systemui发送了ANR

但是从目前的log无法判断,需要查看trace.文件

基继续查看 trace 文件

----- pid 777 at 2013-01-18 18:04:10 -----

Cmd line: com.android.systemui

Build fingerprint: 'Android/rk3288/rk3288:7.1.2/NHG47K/user.yangzhiming.20190219.101900:user/release-keys'

ABI: 'arm'

Build type: optimized

Zygote loaded classes=4377 post zygote classes=1493

Intern table: 43490 strong; 360 weak

JNI: CheckJNI is off; globals=691 (plus 752 weak)

Libraries: /system/lib/libandroid.so /system/lib/libcompiler_rt.so /system/lib/libjavacrypto.so /system/lib/libjnigraphics.so /system/lib/libmedia_jni.so /system/lib/libsoundpool.so /system/lib/libwebviewchromium_loader.so libjavacore.so libopenjdk.so (9)

Heap: 36% free, 9MB/15MB; 73821 objects

Dumping cumulative Gc timings

Start Dumping histograms for 3 iterations for partial concurrent mark sweep

ProcessMarkStack:      Sum: 56.420ms 99% C.I. 0.003ms-25.222ms Avg: 6.268ms Max: 25.333ms

UpdateAndMarkImageModUnionTable:        Sum: 40.438ms 99% C.I. 0.002ms-26.140ms Avg: 1.036ms Max: 31.269ms

UpdateAndMarkZygoteModUnionTable:      Sum: 26.692ms 99% C.I. 1.709ms-21.689ms Avg: 8.897ms Max: 21.689ms

MarkConcurrentRoots:    Sum: 13.882ms 99% C.I. 0.006ms-8.823ms Avg: 2.313ms Max: 8.907ms

SweepMallocSpace:      Sum: 9.441ms 99% C.I. 0.023ms-7.211ms Avg: 1.573ms Max: 7.351ms

MarkRootsCheckpoint:    Sum: 9.354ms 99% C.I. 0.421ms-5.468ms Avg: 1.559ms Max: 5.550ms

EnqueueFinalizerReferences:    Sum: 7.541ms 99% C.I. 0.204ms-4.655ms Avg: 2.513ms Max: 4.655ms

ScanGrayAllocSpaceObjects:      Sum: 5.279ms 99% C.I. 1us-3232.500us Avg: 879.833us Max: 3285us

MarkAllocStackAsLive:  Sum: 4.586ms 99% C.I. 0.183ms-3.946ms Avg: 1.528ms Max: 3.962ms

ReMarkRoots:    Sum: 2.313ms 99% C.I. 347us-1104us Avg: 771us Max: 1104us

ScanGrayImageSpaceObjects:      Sum: 1.435ms 99% C.I. 0.256us-1096.500us Avg: 36.794us Max: 1337us

(Paused)ScanGrayAllocSpaceObjects:      Sum: 828us 99% C.I. 1us-710us Avg: 138us Max: 710us

SweepLargeObjects:      Sum: 766us 99% C.I. 179us-391us Avg: 255.333us Max: 391us

ImageModUnionClearCards:        Sum: 660us 99% C.I. 0.253us-293.999us Avg: 8.461us Max: 440us

SweepSystemWeaks:      Sum: 654us 99% C.I. 186us-250us Avg: 218us Max: 250us

Sweep:  Sum: 517us 99% C.I. 6us-503us Avg: 172.333us Max: 503us

FinishPhase:    Sum: 370us 99% C.I. 47us-263us Avg: 123.333us Max: 263us

MarkNonThreadRoots:    Sum: 341us 99% C.I. 42us-99us Avg: 56.833us Max: 99us

AllocSpaceClearCards:  Sum: 224us 99% C.I. 1us-58us Avg: 18.666us Max: 58us

ProcessReferences:      Sum: 217us 99% C.I. 56us-105us Avg: 72.333us Max: 105us

BindBitmaps:    Sum: 167us 99% C.I. 50us-65us Avg: 55.666us Max: 65us

MarkingPhase:  Sum: 105us 99% C.I. 31us-38us Avg: 35us Max: 38us

ReclaimPhase:  Sum: 104us 99% C.I. 26us-39us Avg: 34.666us Max: 39us

ProcessCards:  Sum: 77us 99% C.I. 10us-16us Avg: 12.833us Max: 16us

(Paused)ScanGrayImageSpaceObjects:      Sum: 72us 99% C.I. 0.250us-13us Avg: 1.846us Max: 13us

RevokeAllThreadLocalAllocationStacks:  Sum: 67us 99% C.I. 19us-27us Avg: 22.333us Max: 27us

(Paused)PausePhase:    Sum: 63us 99% C.I. 19us-23us Avg: 21us Max: 23us

ZygoteModUnionClearCards:      Sum: 58us 99% C.I. 9us-13us Avg: 9.666us Max: 13us

PreCleanCards:  Sum: 55us 99% C.I. 17us-21us Avg: 18.333us Max: 21us

SwapBitmaps:    Sum: 30us 99% C.I. 9us-11us Avg: 10us Max: 11us

(Paused)ProcessMarkStack:      Sum: 29us 99% C.I. 0.250us-29us Avg: 9.666us Max: 29us

InitializePhase:        Sum: 26us 99% C.I. 2us-15us Avg: 8.666us Max: 15us

ScanGrayZygoteSpaceObjects:    Sum: 24us 99% C.I. 6us-9us Avg: 8us Max: 9us

PreSweepingGcVerification:      Sum: 22us 99% C.I. 0.250us-22us Avg: 7.333us Max: 22us

(Paused)ScanGrayZygoteSpaceObjects:    Sum: 20us 99% C.I. 6us-8us Avg: 6.666us Max: 8us

MarkRoots:      Sum: 12us 99% C.I. 3us-5us Avg: 4us Max: 5us

RecursiveMark:  Sum: 7us 99% C.I. 2us-3us Avg: 2.333us Max: 3us

UnBindBitmaps:  Sum: 5us 99% C.I. 1us-3us Avg: 1.666us Max: 3us

SwapStacks:    Sum: 3us 99% C.I. 1us-1us Avg: 1us Max: 1us

SweepZygoteSpace:      Sum: 2us 99% C.I. 250ns-1000ns Avg: 666ns Max: 1000ns

FindDefaultSpaceBitmap: Sum: 0 99% C.I. 0ns-0ns Avg: 0ns Max: 0ns

Done Dumping histograms

partial concurrent mark sweep paused:  Sum: 3.550ms 99% C.I. 0.538ms-1.972ms Avg: 1.183ms Max: 1.972ms

partial concurrent mark sweep total time: 182.906ms mean time: 60.968ms

partial concurrent mark sweep freed: 41773 objects with total size 2MB

partial concurrent mark sweep throughput: 229522/s / 13MB/s

Start Dumping histograms for 4 iterations for sticky concurrent mark sweep

FreeList:      Sum: 60.065ms 99% C.I. 4us-3176.499us Avg: 178.234us Max: 5738us

ScanGrayAllocSpaceObjects:      Sum: 18.961ms 99% C.I. 0.001ms-6.896ms Avg: 1.185ms Max: 6.940ms

SweepArray:    Sum: 9.123ms 99% C.I. 0.175ms-4.671ms Avg: 2.280ms Max: 4.671ms

MarkConcurrentRoots:    Sum: 8.530ms 99% C.I. 0.005ms-2.320ms Avg: 1.066ms Max: 2.320ms

ProcessMarkStack:      Sum: 7.215ms 99% C.I. 0.500us-3696us Avg: 450.937us Max: 3857us

MarkRootsCheckpoint:    Sum: 5.973ms 99% C.I. 357us-2100us Avg: 746.625us Max: 2111us

ScanGrayImageSpaceObjects:      Sum: 5.561ms 99% C.I. 0.265us-1693.999us Avg: 53.471us Max: 1845us

ReMarkRoots:    Sum: 1.113ms 99% C.I. 258us-303us Avg: 278.250us Max: 303us

AllocSpaceClearCards:  Sum: 1.111ms 99% C.I. 1us-228us Avg: 69.437us Max: 228us

MarkingPhase:  Sum: 857us 99% C.I. 177us-253us Avg: 214.250us Max: 253us

ScanGrayZygoteSpaceObjects:    Sum: 734us 99% C.I. 6us-626us Avg: 91.750us Max: 644us

SweepSystemWeaks:      Sum: 579us 99% C.I. 126us-165us Avg: 144.750us Max: 165us

EnqueueFinalizerReferences:    Sum: 436us 99% C.I. 34us-207us Avg: 109us Max: 207us

ResetStack:    Sum: 428us 99% C.I. 24us-198.500us Avg: 107us Max: 199us

MarkNonThreadRoots:    Sum: 407us 99% C.I. 37us-59us Avg: 50.875us Max: 59us

ImageModUnionClearCards:        Sum: 343us 99% C.I. 0.250us-33us Avg: 3.298us Max: 33us

(Paused)ScanGrayAllocSpaceObjects:      Sum: 233us 99% C.I. 1us-74us Avg: 29.125us Max: 74us

BindBitmaps:    Sum: 232us 99% C.I. 54us-62us Avg: 58us Max: 62us

FinishPhase:    Sum: 175us 99% C.I. 25us-64us Avg: 43.750us Max: 64us

ProcessCards:  Sum: 105us 99% C.I. 11us-16us Avg: 13.125us Max: 16us

ZygoteModUnionClearCards:      Sum: 104us 99% C.I. 8us-27us Avg: 13us Max: 27us

RevokeAllThreadLocalAllocationStacks:  Sum: 91us 99% C.I. 15us-28us Avg: 22.750us Max: 28us

(Paused)ScanGrayImageSpaceObjects:      Sum: 81us 99% C.I. 0.250us-11us Avg: 1.557us Max: 11us

ProcessReferences:      Sum: 80us 99% C.I. 7us-50us Avg: 20us Max: 50us

(Paused)PausePhase:    Sum: 74us 99% C.I. 18us-19us Avg: 18.500us Max: 19us

PreCleanCards:  Sum: 61us 99% C.I. 14us-16us Avg: 15.250us Max: 16us

ReclaimPhase:  Sum: 48us 99% C.I. 10us-15us Avg: 12us Max: 15us

InitializePhase:        Sum: 44us 99% C.I. 8us-15us Avg: 11us Max: 15us

SwapBitmaps:    Sum: 29us 99% C.I. 4us-11us Avg: 7.250us Max: 11us

(Paused)ScanGrayZygoteSpaceObjects:    Sum: 24us 99% C.I. 6us-6us Avg: 6us Max: 6us

MarkRoots:      Sum: 18us 99% C.I. 4us-5us Avg: 4.500us Max: 5us

(Paused)ProcessMarkStack:      Sum: 12us 99% C.I. 0.250us-12us Avg: 3us Max: 12us

UnBindBitmaps:  Sum: 8us 99% C.I. 1us-3us Avg: 2us Max: 3us

ForwardSoftReferences:  Sum: 7us 99% C.I. 1us-2us Avg: 1.750us Max: 2us

RecordFree:    Sum: 6us 99% C.I. 1us-2us Avg: 1.500us Max: 2us

SwapStacks:    Sum: 5us 99% C.I. 1us-2us Avg: 1.250us Max: 2us

FindDefaultSpaceBitmap: Sum: 2us 99% C.I. 250ns-1000ns Avg: 500ns Max: 1000ns

PreSweepingGcVerification:      Sum: 0 99% C.I. 0ns-0ns Avg: 0ns Max: 0ns

Done Dumping histograms

sticky concurrent mark sweep paused:    Sum: 1.812ms 99% C.I. 427us-496us Avg: 453us Max: 496us

sticky concurrent mark sweep total time: 122.875ms mean time: 30.718ms

sticky concurrent mark sweep freed: 339756 objects with total size 12MB

sticky concurrent mark sweep throughput: 2.78489e+06/s / 104MB/s

Total time spent in GC: 305.781ms

Mean GC size throughput: 49MB/s

Mean GC object throughput: 1.24769e+06 objects/s

Total number of allocations 455340

Total bytes allocated 24MB

Total bytes freed 15MB

Free memory 5MB

Free memory until GC 5MB

Free memory until OOME 182MB

Total memory 15MB

Max memory 192MB

Zygote space size 1292KB

Total mutator paused time: 5.362ms

Total time waiting for GC to complete: 16.334us

Total GC count: 7

Total GC time: 305.781ms

Total blocking GC count: 0

Total blocking GC time: 0

Histogram of GC count per 10000 ms: 0:55,1:2,4:1

Histogram of blocking GC count per 10000 ms: 0:58

Histogram of native allocation 0:2321,655360:1 bucket size 65536

Histogram of native free 0:475,256:131,512:39,768:9,1024:10,1536:33,2816:2,3840:8 bucket size 256

/system/priv-app/SystemUI/oat/arm/SystemUI.odex: speed

Current JIT code cache size: 368B

Current JIT data cache size: 504B

Current JIT capacity: 64KB

Current number of JIT code cache entries: 2

Total number of JIT compilations: 2

Total number of JIT compilations for on stack replacement: 0

Total number of deoptimizations: 0

Total number of JIT code cache collections: 0

Memory used for stack maps: Avg: 100B Max: 116B Min: 84B

Memory used for compiled code: Avg: 158B Max: 172B Min: 144B

Memory used for profiling info: Avg: 38B Max: 44B Min: 20B

Start Dumping histograms for 2 iterations for JIT timings

Compiling:      Sum: 38.870ms 99% C.I. 1.168ms-37.632ms Avg: 19.435ms Max: 37.702ms

TrimMaps:      Sum: 76us 99% C.I. 35us-41us Avg: 38us Max: 41us

Done Dumping histograms

Memory used for compilation: Avg: 41KB Max: 44KB Min: 38KB

suspend all histogram:  Sum: 235us 99% C.I. 4us-30us Avg: 18.076us Max: 30us

DALVIK THREADS (33):

"Signal Catcher" daemon prio=5 tid=3 Runnable

  | group="system" sCount=0 dsCount=0 obj=0x12c003a0 self=0xa8544e00

  | sysTid=783 nice=0 cgrp=default sched=0/0 handle=0xb1921920

  | state=R schedstat=( 19133043 1071874 23 ) utm=0 stm=0 core=0 HZ=100

  | stack=0xb1825000-0xb1827000 stackSize=1014KB

  | held mutexes= "mutator lock"(shared held)

  native: #00 pc 003537b1  /system/lib/libart.so (_ZN3art15DumpNativeStackERNSt3__113basic_ostreamIcNS0_11char_traitsIcEEEEiP12BacktraceMapPKcPNS_9ArtMethodEPv+128)

  native: #01 pc 00333c65  /system/lib/libart.so (_ZNK3art6Thread9DumpStackERNSt3__113basic_ostreamIcNS1_11char_traitsIcEEEEbP12BacktraceMap+304)

  native: #02 pc 00345d6f  /system/lib/libart.so (_ZN3art14DumpCheckpoint3RunEPNS_6ThreadE+622)

  native: #03 pc 0033fcfd  /system/lib/libart.so (_ZN3art10ThreadList13RunCheckpointEPNS_7ClosureE+336)

  native: #04 pc 0033f9f7  /system/lib/libart.so (_ZN3art10ThreadList4DumpERNSt3__113basic_ostreamIcNS1_11char_traitsIcEEEEb+586)

  native: #05 pc 0033f753  /system/lib/libart.so (_ZN3art10ThreadList14DumpForSigQuitERNSt3__113basic_ostreamIcNS1_11char_traitsIcEEEE+570)

  native: #06 pc 00324c19  /system/lib/libart.so (_ZN3art7Runtime14DumpForSigQuitERNSt3__113basic_ostreamIcNS1_11char_traitsIcEEEE+124)

  native: #07 pc 00329569  /system/lib/libart.so (_ZN3art13SignalCatcher13HandleSigQuitEv+1460)

  native: #08 pc 00328695  /system/lib/libart.so (_ZN3art13SignalCatcher3RunEPv+336)

  native: #09 pc 00047323  /system/lib/libc.so (_ZL15__pthread_startPv+22)

  native: #10 pc 00019e5d  /system/lib/libc.so (__start_thread+6)

  (no managed stack frames)

"main" prio=5 tid=1 Native

  | group="main" sCount=1 dsCount=0 obj=0x7468c4a0 self=0xb2305400

  | sysTid=777 nice=-10 cgrp=default sched=0/0 handle=0xb50b8534

  | state=S schedstat=( 9143485061 2468678073 78924 ) utm=621 stm=292 core=3 HZ=100

  | stack=0xbe73d000-0xbe73f000 stackSize=8MB

  | held mutexes=

  native: #00 pc 00017418  /system/lib/libc.so (syscall+28)

  native: #01 pc 000b70d9  /system/lib/libart.so (_ZN3art17ConditionVariable16WaitHoldingLocksEPNS_6ThreadE+92)

  native: #02 pc 003f791f  /system/lib/libart.so (_ZN3artL12GoToRunnableEPNS_6ThreadE+230)

  native: #03 pc 003f7811  /system/lib/libart.so (_ZN3art12JniMethodEndEjPNS_6ThreadE+8)

  native: #04 pc 005f9095  /system/framework/arm/boot-framework.oat (Java_android_os_BinderProxy_transactNative__ILandroid_os_Parcel_2Landroid_os_Parcel_2I+152)

  at android.os.BinderProxy.transactNative(Native method)

  at android.os.BinderProxy.transact(Binder.java:615)

  at android.bluetooth.IBluetooth$Stub$Proxy.getBondState(IBluetooth.java:1270)

  at android.bluetooth.BluetoothDevice.getBondState(BluetoothDevice.java:982)

  at com.android.settingslib.bluetooth.CachedBluetoothDevice.getBondState(CachedBluetoothDevice.java:433)

  at com.android.systemui.qs.tiles.BluetoothTile$BluetoothDetailAdapter.updateItems(BluetoothTile.java:257)

  at com.android.systemui.qs.tiles.BluetoothTile$BluetoothDetailAdapter.-wrap0(BluetoothTile.java:-1)

  at com.android.systemui.qs.tiles.BluetoothTile$1$1.run(BluetoothTile.java:191)

  at android.os.Handler.handleCallback(Handler.java:755)

  at android.os.Handler.dispatchMessage(Handler.java:95)

  at android.os.Looper.loop(Looper.java:154)

  at android.app.ActivityThread.main(ActivityThread.java:6141)

  at java.lang.reflect.Method.invoke!(Native method)

  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:912)

  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:802)

"Jit thread pool worker thread 0" daemon prio=5 tid=2 Native

  | group="main" sCount=1 dsCount=0 obj=0x12c00310 self=0xaaf9e000

  | sysTid=782 nice=9 cgrp=default sched=0/0 handle=0xb1a22920

  | state=S schedstat=( 5511917 34661375 7 ) utm=0 stm=0 core=0 HZ=100

  | stack=0xb1924000-0xb1926000 stackSize=1022KB

  | held mutexes=

  native: #00 pc 00017418  /system/lib/libc.so (syscall+28)

  native: #01 pc 000b70d9  /system/lib/libart.so (_ZN3art17ConditionVariable16WaitHoldingLocksEPNS_6ThreadE+92)

  native: #02 pc 003472e1  /system/lib/libart.so (_ZN3art10ThreadPool7GetTaskEPNS_6ThreadE+160)

  native: #03 pc 00346b07  /system/lib/libart.so (_ZN3art16ThreadPoolWorker3RunEv+62)

  native: #04 pc 00346627  /system/lib/libart.so (_ZN3art16ThreadPoolWorker8CallbackEPv+78)

  native: #05 pc 00047323  /system/lib/libc.so (_ZL15__pthread_startPv+22)

  native: #06 pc 00019e5d  /system/lib/libc.so (__start_thread+6)

  (no managed stack frames)

"JDWP" daemon prio=5 tid=4 WaitingInMainDebuggerLoop

  | group="system" sCount=1 dsCount=0 obj=0x12c00430 self=0xaaf9f400

  | sysTid=784 nice=0 cgrp=default sched=0/0 handle=0xb1822920

  | state=S schedstat=( 550083 0 3 ) utm=0 stm=0 core=0 HZ=100

  | stack=0xb1726000-0xb1728000 stackSize=1014KB

  | held mutexes=

  native: #00 pc 00049a24  /system/lib/libc.so (recvmsg+8)

  native: #01 pc 003ff309  /system/lib/libart.so (_ZN3art4JDWP12JdwpAdbState15ReceiveClientFdEv+88)

  native: #02 pc 003ff52d  /system/lib/libart.so (_ZN3art4JDWP12JdwpAdbState6AcceptEv+344)

  native: #03 pc 0024a1dd  /system/lib/libart.so (_ZN3art4JDWP9JdwpState3RunEv+296)

  native: #04 pc 00249ae3  /system/lib/libart.so (_ZN3art4JDWPL15StartJdwpThreadEPv+22)

  native: #05 pc 00047323  /system/lib/libc.so (_ZL15__pthread_startPv+22)

  native: #06 pc 00019e5d  /system/lib/libc.so (__start_thread+6)

  (no managed stack frames)

"ReferenceQueueDaemon" daemon prio=5 tid=5 Waiting

  | group="system" sCount=1 dsCount=0 obj=0x12c004c0 self=0xa8546200

  | sysTid=785 nice=0 cgrp=default sched=0/0 handle=0xb1723920

  | state=S schedstat=( 3312164 59208 29 ) utm=0 stm=0 core=0 HZ=100

  | stack=0xb1621000-0xb1623000 stackSize=1038KB

  | held mutexes=

  at java.lang.Object.wait!(Native method)

  - waiting on <0x0d3332fe> (a java.lang.Class<java.lang.ref.ReferenceQueue>)

  at java.lang.Daemons$ReferenceQueueDaemon.run(Daemons.java:150)

  - locked <0x0d3332fe> (a java.lang.Class<java.lang.ref.ReferenceQueue>)

  at java.lang.Thread.run(Thread.java:761)

"FinalizerWatchdogDaemon" daemon prio=5 tid=6 Waiting

  | group="system" sCount=1 dsCount=0 obj=0x12c005e0 self=0xa8546c00

  | sysTid=787 nice=0 cgrp=default sched=0/0 handle=0xb1519920

  | state=S schedstat=( 1589291 6439125 14 ) utm=0 stm=0 core=1 HZ=100

  | stack=0xb1417000-0xb1419000 stackSize=1038KB

"Recents-TaskResourceLoader" prio=5 tid=15 Waiting

  | group="main" sCount=1 dsCount=0 obj=0x12c69700 self=0xa59d2000

  | sysTid=927 nice=10 cgrp=default sched=0/0 handle=0xaae80920

  | state=S schedstat=( 592083 1653459 6 ) utm=0 stm=0 core=1 HZ=100

  | stack=0xaad7e000-0xaad80000 stackSize=1038KB

  | held mutexes=

  at java.lang.Object.wait!(Native method)

  - waiting on <0x0bafbd75> (a com.android.systemui.recents.model.TaskResourceLoadQueue)

  at com.android.systemui.recents.model.BackgroundTaskLoader.run(RecentsTaskLoader.java:236)

  - locked <0x0bafbd75> (a com.android.systemui.recents.model.TaskResourceLoadQueue)

  at android.os.Handler.handleCallback(Handler.java:755)

  at android.os.Handler.dispatchMessage(Handler.java:95)

  at android.os.Looper.loop(Looper.java:154)

  at android.os.HandlerThread.run(HandlerThread.java:61)

"recents.fg" prio=5 tid=16 Native

  | group="main" sCount=1 dsCount=0 obj=0x12c699d0 self=0xa59d4d00

  | sysTid=928 nice=0 cgrp=default sched=0/0 handle=0xa713a920

  | state=S schedstat=( 301874 2583584 6 ) utm=0 stm=0 core=1 HZ=100

  | stack=0xa7038000-0xa703a000 stackSize=1038KB

  | held mutexes=

  native: #00 pc 000487a4  /system/lib/libc.so (__epoll_pwait+20)

  native: #01 pc 0001a20d  /system/lib/libc.so (epoll_pwait+60)

  native: #02 pc 0001a23d  /system/lib/libc.so (epoll_wait+12)

  native: #03 pc 00011d3f  /system/lib/libutils.so (_ZN7android6Looper9pollInnerEi+118)

  native: #04 pc 00011c3b  /system/lib/libutils.so (_ZN7android6Looper8pollOnceEiPiS1_PPv+26)

  native: #05 pc 00093b15  /system/lib/libandroid_runtime.so (_ZN7android18NativeMessageQueue8pollOnceEP7_JNIEnvP8_jobjecti+22)

  native: #06 pc 0062be5d  /system/framework/arm/boot-framework.oat (Java_android_os_MessageQueue_nativePollOnce__JI+96)

  at android.os.MessageQueue.nativePollOnce(Native method)

  at android.os.MessageQueue.next(MessageQueue.java:323)

  at android.os.Looper.loop(Looper.java:136)

  at android.os.HandlerThread.run(HandlerThread.java:61)

"VolumeDialogController" prio=5 tid=17 Native

  | group="main" sCount=1 dsCount=0 obj=0x12cbb700 self=0xa59d5c00

  | sysTid=952 nice=0 cgrp=default sched=0/0 handle=0x977ff920

  | state=S schedstat=( 5986169 4092665 71 ) utm=0 stm=0 core=0 HZ=100

  | stack=0x976fd000-0x976ff000 stackSize=1038KB

  | held mutexes=

  native: #00 pc 000487a4  /system/lib/libc.so (__epoll_pwait+20)

  native: #01 pc 0001a20d  /system/lib/libc.so (epoll_pwait+60)

  native: #02 pc 0001a23d  /system/lib/libc.so (epoll_wait+12)

  native: #03 pc 00011d3f  /system/lib/libutils.so (_ZN7android6Looper9pollInnerEi+118)

  native: #04 pc 00011c3b  /system/lib/libutils.so (_ZN7android6Looper8pollOnceEiPiS1_PPv+26)

  native: #05 pc 00093b15  /system/lib/libandroid_runtime.so (_ZN7android18NativeMessageQueue8pollOnceEP7_JNIEnvP8_jobjecti+22)

  native: #06 pc 0062be5d  /system/framework/arm/boot-framework.oat (Java_android_os_MessageQueue_nativePollOnce__JI+96)

  at android.os.MessageQueue.nativePollOnce(Native method)

  at android.os.MessageQueue.next(MessageQueue.java:323)

  at android.os.Looper.loop(Looper.java:136)

  at android.os.HandlerThread.run(HandlerThread.java:61)

"Binder:777_4" prio=5 tid=18 Native

  | group="main" sCount=1 dsCount=0 obj=0x12cee5e0 self=0xaafba400

  | sysTid=969 nice=0 cgrp=default sched=0/0 handle=0x976fa920

  | state=S schedstat=( 26502001 33207418 179 ) utm=0 stm=1 core=0 HZ=100

  | stack=0x975fe000-0x97600000 stackSize=1014KB

  | held mutexes=

  native: #00 pc 000488e4  /system/lib/libc.so (__ioctl+8)

  native: #01 pc 0001ae5b  /system/lib/libc.so (ioctl+38)

  native: #02 pc 0003cc69  /system/lib/libbinder.so (_ZN7android14IPCThreadState14talkWithDriverEb+168)

  native: #03 pc 0003cd65  /system/lib/libbinder.so (_ZN7android14IPCThreadState20getAndExecuteCommandEv+8)

  native: #04 pc 0003d2cf  /system/lib/libbinder.so (_ZN7android14IPCThreadState14joinThreadPoolEb+46)

  native: #05 pc 0004f6b5  /system/lib/libbinder.so (???)

  native: #06 pc 0000e365  /system/lib/libutils.so (_ZN7android6Thread11_threadLoopEPv+144)

  native: #07 pc 00067f29  /system/lib/libandroid_runtime.so (_ZN7android14AndroidRuntime15javaThreadShellEPv+80)

  native: #08 pc 00047323  /system/lib/libc.so (_ZL15__pthread_startPv+22)

  native: #09 pc 00019e5d  /system/lib/libc.so (__start_thread+6)

  (no managed stack frames)

"pool-1-thread-1" prio=5 tid=19 Waiting

  | group="main" sCount=1 dsCount=0 obj=0x12ceef70 self=0xa59d6600

  | sysTid=1002 nice=0 cgrp=default sched=0/0 handle=0x975fb920

  | state=S schedstat=( 612209 636417 4 ) utm=0 stm=0 core=0 HZ=100

  | stack=0x974f9000-0x974fb000 stackSize=1038KB

  | held mutexes=

  at java.lang.Object.wait!(Native method)

  - waiting on <0x030b810a> (a java.lang.Object)

  at java.lang.Thread.parkFor$(Thread.java:2127)

  - locked <0x030b810a> (a java.lang.Object)

  at sun.misc.Unsafe.park(Unsafe.java:325)

  at java.util.concurrent.locks.LockSupport.park(LockSupport.java:161)

  at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2035)

  at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:413)

  at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1058)

  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1118)

  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)

  at java.lang.Thread.run(Thread.java:761)

"RenderThread" prio=5 tid=20 Native

  | group="main" sCount=1 dsCount=0 obj=0x12dae310 self=0xaafbb800

  | sysTid=1004 nice=-10 cgrp=default sched=0/0 handle=0x974f6920

  | state=S schedstat=( 4019827595 892828986 8169 ) utm=321 stm=79 core=2 HZ=100

  | stack=0x973fa000-0x973fc000 stackSize=1014KB

  | held mutexes=

  native: #00 pc 000487a4  /system/lib/libc.so (__epoll_pwait+20)

  native: #01 pc 0001a20d  /system/lib/libc.so (epoll_pwait+60)

  native: #02 pc 0001a23d  /system/lib/libc.so (epoll_wait+12)

  native: #03 pc 00011d3f  /system/lib/libutils.so (_ZN7android6Looper9pollInnerEi+118)

  native: #04 pc 00011c3b  /system/lib/libutils.so (_ZN7android6Looper8pollOnceEiPiS1_PPv+26)

  native: #05 pc 00029205  /system/lib/libhwui.so (_ZN7android10uirenderer12renderthread12RenderThread10threadLoopEv+284)

  native: #06 pc 0000e365  /system/lib/libutils.so (_ZN7android6Thread11_threadLoopEPv+144)

  native: #07 pc 00067f29  /system/lib/libandroid_runtime.so (_ZN7android14AndroidRuntime15javaThreadShellEPv+80)

  native: #08 pc 00047323  /system/lib/libc.so (_ZL15__pthread_startPv+22)

  native: #09 pc 00019e5d  /system/lib/libc.so (__start_thread+6)

  (no managed stack frames)

"Keyboard" prio=5 tid=21 Native

  | group="main" sCount=1 dsCount=0 obj=0x12dd80d0 self=0x97840000

  | sysTid=1007 nice=10 cgrp=default sched=0/0 handle=0x972b3920

  | state=S schedstat=( 476875 4957167 2 ) utm=0 stm=0 core=0 HZ=100

  | stack=0x971b1000-0x971b3000 stackSize=1038KB

  | held mutexes=

  native: #00 pc 000487a4  /system/lib/libc.so (__epoll_pwait+20)

  native: #01 pc 0001a20d  /system/lib/libc.so (epoll_pwait+60)

  native: #02 pc 0001a23d  /system/lib/libc.so (epoll_wait+12)

  native: #03 pc 00011d3f  /system/lib/libutils.so (_ZN7android6Looper9pollInnerEi+118)

  native: #04 pc 00011c3b  /system/lib/libutils.so (_ZN7android6Looper8pollOnceEiPiS1_PPv+26)

  native: #05 pc 00093b15  /system/lib/libandroid_runtime.so (_ZN7android18NativeMessageQueue8pollOnceEP7_JNIEnvP8_jobjecti+22)

  native: #06 pc 0062be5d  /system/framework/arm/boot-framework.oat (Java_android_os_MessageQueue_nativePollOnce__JI+96)

  at android.os.MessageQueue.nativePollOnce(Native method)

  at android.os.MessageQueue.next(MessageQueue.java:323)

  at android.os.Looper.loop(Looper.java:136)

  at android.os.HandlerThread.run(HandlerThread.java:61)

"Binder:777_5" prio=5 tid=22 Native

  | group="main" sCount=1 dsCount=0 obj=0x12dd88b0 self=0xaafbcc00

  | sysTid=1008 nice=0 cgrp=default sched=0/0 handle=0x971ae920

  | state=S schedstat=( 34576504 35132120 141 ) utm=1 stm=1 core=0 HZ=100

  | stack=0x970b2000-0x970b4000 stackSize=1014KB

  | held mutexes=

  native: #00 pc 000488e4  /system/lib/libc.so (__ioctl+8)

  native: #01 pc 0001ae5b  /system/lib/libc.so (ioctl+38)

  native: #02 pc 0003cc69  /system/lib/libbinder.so (_ZN7android14IPCThreadState14talkWithDriverEb+168)

  native: #03 pc 0003cd65  /system/lib/libbinder.so (_ZN7android14IPCThreadState20getAndExecuteCommandEv+8)

  native: #04 pc 0003d2cf  /system/lib/libbinder.so (_ZN7android14IPCThreadState14joinThreadPoolEb+46)

  native: #05 pc 0004f6b5  /system/lib/libbinder.so (???)

  native: #06 pc 0000e365  /system/lib/libutils.so (_ZN7android6Thread11_threadLoopEPv+144)

  native: #07 pc 00067f29  /system/lib/libandroid_runtime.so (_ZN7android14AndroidRuntime15javaThreadShellEPv+80)

  native: #08 pc 00047323  /system/lib/libc.so (_ZL15__pthread_startPv+22)

  native: #09 pc 00019e5d  /system/lib/libc.so (__start_thread+6)

  (no managed stack frames)

"pool-2-thread-1" prio=5 tid=23 Waiting

  | group="main" sCount=1 dsCount=0 obj=0x12dd8d30 self=0x97840500

  | sysTid=1009 nice=0 cgrp=default sched=0/0 handle=0x970af920

  | state=S schedstat=( 343583 850500 4 ) utm=0 stm=0 core=0 HZ=100

  | stack=0x96fad000-0x96faf000 stackSize=1038KB

  | held mutexes=

  at java.lang.Object.wait!(Native method)

  - waiting on <0x04f32d7b> (a java.lang.Object)

  at java.lang.Thread.parkFor$(Thread.java:2127)

  - locked <0x04f32d7b> (a java.lang.Object)

  at sun.misc.Unsafe.park(Unsafe.java:325)

  at java.util.concurrent.locks.LockSupport.park(LockSupport.java:161)

  at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2035)

  at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:413)

  at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1058)

  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1118)

  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)

  at java.lang.Thread.run(Thread.java:761)

"ConnectivityThread" prio=5 tid=24 Native

  | group="main" sCount=1 dsCount=0 obj=0x12c4c940 self=0x97844b00

  | sysTid=1020 nice=0 cgrp=default sched=0/0 handle=0x96dff920

  | state=S schedstat=( 269208 0 2 ) utm=0 stm=0 core=2 HZ=100

  | stack=0x96cfd000-0x96cff000 stackSize=1038KB

  | held mutexes=

  native: #00 pc 000487a4  /system/lib/libc.so (__epoll_pwait+20)

  native: #01 pc 0001a20d  /system/lib/libc.so (epoll_pwait+60)

  native: #02 pc 0001a23d  /system/lib/libc.so (epoll_wait+12)

  native: #03 pc 00011d3f  /system/lib/libutils.so (_ZN7android6Looper9pollInnerEi+118)

  native: #04 pc 00011c3b  /system/lib/libutils.so (_ZN7android6Looper8pollOnceEiPiS1_PPv+26)

  native: #05 pc 00093b15  /system/lib/libandroid_runtime.so (_ZN7android18NativeMessageQueue8pollOnceEP7_JNIEnvP8_jobjecti+22)

  native: #06 pc 0062be5d  /system/framework/arm/boot-framework.oat (Java_android_os_MessageQueue_nativePollOnce__JI+96)

  at android.os.MessageQueue.nativePollOnce(Native method)

  at android.os.MessageQueue.next(MessageQueue.java:323)

  at android.os.Looper.loop(Looper.java:136)

  at android.os.HandlerThread.run(HandlerThread.java:61)

"Binder:777_6" prio=5 tid=25 Native

  | group="main" sCount=1 dsCount=0 obj=0x12c69b80 self=0x96e63300

  | sysTid=1023 nice=0 cgrp=default sched=0/0 handle=0x96bff920

  | state=S schedstat=( 1298499 3568541 10 ) utm=0 stm=0 core=0 HZ=100

  | stack=0x96b03000-0x96b05000 stackSize=1014KB

  | held mutexes=

  native: #00 pc 000488e4  /system/lib/libc.so (__ioctl+8)

  native: #01 pc 0001ae5b  /system/lib/libc.so (ioctl+38)

  native: #02 pc 0003cc69  /system/lib/libbinder.so (_ZN7android14IPCThreadState14talkWithDriverEb+168)

  native: #03 pc 0003cd65  /system/lib/libbinder.so (_ZN7android14IPCThreadState20getAndExecuteCommandEv+8)

  native: #04 pc 0003d2cf  /system/lib/libbinder.so (_ZN7android14IPCThreadState14joinThreadPoolEb+46)

  native: #05 pc 0004f6b5  /system/lib/libbinder.so (???)

  native: #06 pc 0000e365  /system/lib/libutils.so (_ZN7android6Thread11_threadLoopEPv+144)

  native: #07 pc 00067f29  /system/lib/libandroid_runtime.so (_ZN7android14AndroidRuntime15javaThreadShellEPv+80)

  native: #08 pc 00047323  /system/lib/libc.so (_ZL15__pthread_startPv+22)

  native: #09 pc 00019e5d  /system/lib/libc.so (__start_thread+6)

  (no managed stack frames)

"PhoneStatusBar" prio=5 tid=26 Native

  | group="main" sCount=1 dsCount=0 obj=0x12c9c550 self=0x96e61a00

  | sysTid=1039 nice=10 cgrp=default sched=0/0 handle=0x96a00920

  | state=S schedstat=( 1520337890 1893436656 12413 ) utm=115 stm=36 core=2 HZ=100

  | stack=0x968fe000-0x96900000 stackSize=1038KB

  | held mutexes=

  native: #00 pc 000487a4  /system/lib/libc.so (__epoll_pwait+20)

  native: #01 pc 0001a20d  /system/lib/libc.so (epoll_pwait+60)

  native: #02 pc 0001a23d  /system/lib/libc.so (epoll_wait+12)

  native: #03 pc 00011d3f  /system/lib/libutils.so (_ZN7android6Looper9pollInnerEi+118)

  native: #04 pc 00011c3b  /system/lib/libutils.so (_ZN7android6Looper8pollOnceEiPiS1_PPv+26)

  native: #05 pc 00093b15  /system/lib/libandroid_runtime.so (_ZN7android18NativeMessageQueue8pollOnceEP7_JNIEnvP8_jobjecti+22)

  native: #06 pc 0062be5d  /system/framework/arm/boot-framework.oat (Java_android_os_MessageQueue_nativePollOnce__JI+96)

  at android.os.MessageQueue.nativePollOnce(Native method)

  at android.os.MessageQueue.next(MessageQueue.java:323)

  at android.os.Looper.loop(Looper.java:136)

  at android.os.HandlerThread.run(HandlerThread.java:61)

"ConnectivityManager" prio=5 tid=27 Native

  | group="main" sCount=1 dsCount=0 obj=0x12cee700 self=0x96e61500

  | sysTid=1043 nice=0 cgrp=default sched=0/0 handle=0x968fb920

  | state=S schedstat=( 257250 1612625 8 ) utm=0 stm=0 core=1 HZ=100

  | stack=0x967f9000-0x967fb000 stackSize=1038KB

  | held mutexes=

  native: #00 pc 000487a4  /system/lib/libc.so (__epoll_pwait+20)

  native: #01 pc 0001a20d  /system/lib/libc.so (epoll_pwait+60)

  native: #02 pc 0001a23d  /system/lib/libc.so (epoll_wait+12)

  native: #03 pc 00011d3f  /system/lib/libutils.so (_ZN7android6Looper9pollInnerEi+118)

  native: #04 pc 00011c3b  /system/lib/libutils.so (_ZN7android6Looper8pollOnceEiPiS1_PPv+26)

  native: #05 pc 00093b15  /system/lib/libandroid_runtime.so (_ZN7android18NativeMessageQueue8pollOnceEP7_JNIEnvP8_jobjecti+22)

  native: #06 pc 0062be5d  /system/framework/arm/boot-framework.oat (Java_android_os_MessageQueue_nativePollOnce__JI+96)

  at android.os.MessageQueue.nativePollOnce(Native method)

  at android.os.MessageQueue.next(MessageQueue.java:323)

  at android.os.Looper.loop(Looper.java:136)

  at android.os.HandlerThread.run(HandlerThread.java:61)

"QSTileHost" prio=5 tid=29 Native

  | group="main" sCount=1 dsCount=0 obj=0x12dae9d0 self=0x96e62900

  | sysTid=1049 nice=10 cgrp=default sched=0/0 handle=0x965f1920

  | state=S schedstat=( 468112173 402088440 1612 ) utm=42 stm=3 core=2 HZ=100

  | stack=0x964ef000-0x964f1000 stackSize=1038KB

  | held mutexes=

  native: #00 pc 000487a4  /system/lib/libc.so (__epoll_pwait+20)

  native: #01 pc 0001a20d  /system/lib/libc.so (epoll_pwait+60)

  native: #02 pc 0001a23d  /system/lib/libc.so (epoll_wait+12)

  native: #03 pc 00011d3f  /system/lib/libutils.so (_ZN7android6Looper9pollInnerEi+118)

  native: #04 pc 00011c3b  /system/lib/libutils.so (_ZN7android6Looper8pollOnceEiPiS1_PPv+26)

  native: #05 pc 00093b15  /system/lib/libandroid_runtime.so (_ZN7android18NativeMessageQueue8pollOnceEP7_JNIEnvP8_jobjecti+22)

  native: #06 pc 0062be5d  /system/framework/arm/boot-framework.oat (Java_android_os_MessageQueue_nativePollOnce__JI+96)

  at android.os.MessageQueue.nativePollOnce(Native method)

  at android.os.MessageQueue.next(MessageQueue.java:323)

  at android.os.Looper.loop(Looper.java:136)

  at android.os.HandlerThread.run(HandlerThread.java:61)

"hwuiTask1" prio=5 tid=14 Native

  | group="main" sCount=1 dsCount=0 obj=0x12daee50 self=0x96ed8000

  | sysTid=1304 nice=-2 cgrp=default sched=0/0 handle=0x966f6920

  | state=S schedstat=( 159308602 138668837 2221 ) utm=11 stm=3 core=1 HZ=100

  | stack=0x965fa000-0x965fc000 stackSize=1014KB

  | held mutexes=

  native: #00 pc 00017418  /system/lib/libc.so (syscall+28)

  native: #01 pc 00046eab  /system/lib/libc.so (_ZL24__pthread_cond_timedwaitP23pthread_cond_internal_tP15pthread_mutex_tbPK8timespec+102)

  native: #02 pc 00029aab  /system/lib/libhwui.so (???)

  native: #03 pc 00029a21  /system/lib/libhwui.so (???)

  native: #04 pc 0000e3e3  /system/lib/libutils.so (_ZN7android6Thread11_threadLoopEPv+270)

  native: #05 pc 00067f29  /system/lib/libandroid_runtime.so (_ZN7android14AndroidRuntime15javaThreadShellEPv+80)

  native: #06 pc 00047323  /system/lib/libc.so (_ZL15__pthread_startPv+22)

  native: #07 pc 00019e5d  /system/lib/libc.so (__start_thread+6)

  (no managed stack frames)

"hwuiTask2" prio=5 tid=28 Native

  | group="main" sCount=1 dsCount=0 obj=0x12fbe160 self=0x9542d200

  | sysTid=1314 nice=-2 cgrp=default sched=0/0 handle=0x964ec920

  | state=S schedstat=( 10163708 51989004 138 ) utm=0 stm=0 core=2 HZ=100

  | stack=0x963f0000-0x963f2000 stackSize=1014KB

  | held mutexes=

  native: #00 pc 00017418  /system/lib/libc.so (syscall+28)

  native: #01 pc 00046eab  /system/lib/libc.so (_ZL24__pthread_cond_timedwaitP23pthread_cond_internal_tP15pthread_mutex_tbPK8timespec+102)

  native: #02 pc 00029aab  /system/lib/libhwui.so (???)

  native: #03 pc 00029a21  /system/lib/libhwui.so (???)

  native: #04 pc 0000e3e3  /system/lib/libutils.so (_ZN7android6Thread11_threadLoopEPv+270)

  native: #05 pc 00067f29  /system/lib/libandroid_runtime.so (_ZN7android14AndroidRuntime15javaThreadShellEPv+80)

  native: #06 pc 00047323  /system/lib/libc.so (_ZL15__pthread_startPv+22)

  native: #07 pc 00019e5d  /system/lib/libc.so (__start_thread+6)

  (no managed stack frames)

"AsyncTask #4" prio=5 tid=30 TimedWaiting

  | group="main" sCount=1 dsCount=0 obj=0x12fbedc0 self=0x94c32300

  | sysTid=1326 nice=0 cgrp=default sched=0/0 handle=0x9507f920

  | state=S schedstat=( 1231125 129791 6 ) utm=0 stm=0 core=3 HZ=100

  | stack=0x94f7d000-0x94f7f000 stackSize=1038KB

  | held mutexes=

  at java.lang.Object.wait!(Native method)

  - waiting on <0x0b880798> (a java.lang.Object)

  at java.lang.Thread.parkFor$(Thread.java:2127)

  - locked <0x0b880798> (a java.lang.Object)

  at sun.misc.Unsafe.park(Unsafe.java:325)

  at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:201)

  at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2077)

  at java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:438)

  at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1057)

  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1118)

  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)

  at java.lang.Thread.run(Thread.java:761)

"Binder:777_7" prio=5 tid=31 Native

  | group="main" sCount=1 dsCount=0 obj=0x12fbeaf0 self=0x94c30500

  | sysTid=1340 nice=0 cgrp=default sched=0/0 handle=0x94da8920

  | state=S schedstat=( 286519044 328250985 1443 ) utm=14 stm=13 core=3 HZ=100

  | stack=0x94cac000-0x94cae000 stackSize=1014KB

  | held mutexes=

  native: #00 pc 000488e4  /system/lib/libc.so (__ioctl+8)

  native: #01 pc 0001ae5b  /system/lib/libc.so (ioctl+38)

  native: #02 pc 0003cc69  /system/lib/libbinder.so (_ZN7android14IPCThreadState14talkWithDriverEb+168)

  native: #03 pc 0003cd65  /system/lib/libbinder.so (_ZN7android14IPCThreadState20getAndExecuteCommandEv+8)

  native: #04 pc 0003d2cf  /system/lib/libbinder.so (_ZN7android14IPCThreadState14joinThreadPoolEb+46)

  native: #05 pc 0004f6b5  /system/lib/libbinder.so (???)

  native: #06 pc 0000e365  /system/lib/libutils.so (_ZN7android6Thread11_threadLoopEPv+144)

  native: #07 pc 00067f29  /system/lib/libandroid_runtime.so (_ZN7android14AndroidRuntime15javaThreadShellEPv+80)

  native: #08 pc 00047323  /system/lib/libc.so (_ZL15__pthread_startPv+22)

  native: #09 pc 00019e5d  /system/lib/libc.so (__start_thread+6)

  (no managed stack frames)

"AsyncTask #7" prio=5 tid=32 TimedWaiting

  | group="main" sCount=1 dsCount=0 obj=0x12cee4c0 self=0x94c4d000

  | sysTid=1422 nice=0 cgrp=default sched=0/0 handle=0x94ed8920

  | state=S schedstat=( 686292 0 3 ) utm=0 stm=0 core=0 HZ=100

  | stack=0x94dd6000-0x94dd8000 stackSize=1038KB

  | held mutexes=

  at java.lang.Object.wait!(Native method)

  - waiting on <0x02cbbbf1> (a java.lang.Object)

  at java.lang.Thread.parkFor$(Thread.java:2127)

  - locked <0x02cbbbf1> (a java.lang.Object)

  at sun.misc.Unsafe.park(Unsafe.java:325)

  at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:201)

  at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2077)

  at java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:438)

  at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1057)

  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1118)

  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)

  at java.lang.Thread.run(Thread.java:761)

"AsyncTask #8" prio=5 tid=33 TimedWaiting

  | group="main" sCount=1 dsCount=0 obj=0x12cee160 self=0x94c31900

  | sysTid=1423 nice=0 cgrp=default sched=0/0 handle=0x93aff920

  | state=S schedstat=( 953750 2470125 8 ) utm=0 stm=0 core=0 HZ=100

  | stack=0x939fd000-0x939ff000 stackSize=1038KB

  | held mutexes=

  at java.lang.Object.wait!(Native method)

  - waiting on <0x0168a3d6> (a java.lang.Object)

  at java.lang.Thread.parkFor$(Thread.java:2127)

  - locked <0x0168a3d6> (a java.lang.Object)

  at sun.misc.Unsafe.park(Unsafe.java:325)

  at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:201)

  at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2077)

  at java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:438)

  at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1057)

  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1118)

  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)

  at java.lang.Thread.run(Thread.java:761)

"mali-mem-purge" prio=5 (not attached)

  | sysTid=1113 nice=-4 cgrp=default

  | state=S schedstat=( 175136533 45153787 555 ) utm=3 stm=13 core=2 HZ=100

"mali-utility-wo" prio=5 (not attached)

  | sysTid=1114 nice=-4 cgrp=default

  | state=S schedstat=( 104124 126583 3 ) utm=0 stm=0 core=0 HZ=100

"mali-utility-wo" prio=5 (not attached)

  | sysTid=1115 nice=-4 cgrp=default

  | state=S schedstat=( 66499 639917 4 ) utm=0 stm=0 core=1 HZ=100

"mali-utility-wo" prio=5 (not attached)

  | sysTid=1116 nice=-4 cgrp=default

  | state=S schedstat=( 790708 2625 4 ) utm=0 stm=0 core=0 HZ=100

"mali-utility-wo" prio=5 (not attached)

  | sysTid=1117 nice=-4 cgrp=default

  | state=S schedstat=( 7904459 667334 19 ) utm=0 stm=0 core=0 HZ=100

"mali-cmar-backe" prio=5 (not attached)

  | sysTid=1119 nice=-4 cgrp=default

  | state=S schedstat=( 831369590 338231244 5503 ) utm=17 stm=65 core=0 HZ=100

"mali-hist-dump" prio=5 (not attached)

  | sysTid=1120 nice=-4 cgrp=default

  | state=S schedstat=( 216931758 33375706 494 ) utm=20 stm=0 core=0 HZ=100

----- end 777 -----

通过trace 文件发现

"main" prio=5 tid=1 Native

  | group="main" sCount=1 dsCount=0 obj=0x7468c4a0 self=0xb2305400

  | sysTid=777 nice=-10 cgrp=default sched=0/0 handle=0xb50b8534

  | state=S schedstat=( 9143485061 2468678073 78924 ) utm=621 stm=292 core=3 HZ=100

  | stack=0xbe73d000-0xbe73f000 stackSize=8MB

  | held mutexes=

  native: #00 pc 00017418  /system/lib/libc.so (syscall+28)

  native: #01 pc 000b70d9  /system/lib/libart.so (_ZN3art17ConditionVariable16WaitHoldingLocksEPNS_6ThreadE+92)

  native: #02 pc 003f791f  /system/lib/libart.so (_ZN3artL12GoToRunnableEPNS_6ThreadE+230)

  native: #03 pc 003f7811  /system/lib/libart.so (_ZN3art12JniMethodEndEjPNS_6ThreadE+8)

  native: #04 pc 005f9095  /system/framework/arm/boot-framework.oat (Java_android_os_BinderProxy_transactNative__ILandroid_os_Parcel_2Landroid_os_Parcel_2I+152)

  at android.os.BinderProxy.transactNative(Native method)

  at android.os.BinderProxy.transact(Binder.java:615)

  at android.bluetooth.IBluetooth$Stub$Proxy.getBondState(IBluetooth.java:1270)

  at android.bluetooth.BluetoothDevice.getBondState(BluetoothDevice.java:982)

  at com.android.settingslib.bluetooth.CachedBluetoothDevice.getBondState(CachedBluetoothDevice.java:433)

  at com.android.systemui.qs.tiles.BluetoothTile$BluetoothDetailAdapter.updateItems(BluetoothTile.java:257)

  at com.android.systemui.qs.tiles.BluetoothTile$BluetoothDetailAdapter.-wrap0(BluetoothTile.java:-1)

  at com.android.systemui.qs.tiles.BluetoothTile$1$1.run(BluetoothTile.java:191)

  at android.os.Handler.handleCallback(Handler.java:755)

  at android.os.Handler.dispatchMessage(Handler.java:95)

  at android.os.Looper.loop(Looper.java:154)

  at android.app.ActivityThread.main(ActivityThread.java:6141)

  at java.lang.reflect.Method.invoke!(Native method)

  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:912)

  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:802)

系统卡在了  at com.android.systemui.qs.tiles.BluetoothTile$BluetoothDetailAdapter.updateItems(BluetoothTile.java:257)

继续看代码,发现这的线程更新比较频繁

修改更新频率

找到原因

3 搞定


心如蔚蓝的天空

推荐阅读更多精彩内容