Process: com.my.app
PID: 32389
UID: 1000
Flags: 0x20d83ec7
Package: com.my.app v25092404 (0.2.25092404)
Foreground: Yes
Process-Runtime: 10909267
Activity: com.my.app/.map.ui.page.gnss.MyGnssActivity
Subject: Input dispatching timed out (bcbb67 com.my.app/com.my.app.map.ui.page.gnss.MyGnssActivity (server) is not responding. Waited 5001ms for MotionEvent(deviceId=-1, source=0x00001002, displayId=0, action=DOWN, actionButton=0x00000000, flags=0x00000000, metaState=0x00000000, buttonState=0x00000000, classification=NONE, edgeFlags=0x00000000, xPrecision=1.0, yPrecision=1.0, xCursorPosition=nan, yCursorPosition=nan, pointers=[0: (1212.0, 1073.0)]), policyFlags=0x6b000000)
Build: DesaySV/g7ph_t22_int/msmnile_gvmq:11/RQ3A.210805.001.A1/eng.sreadm.20250928.104050:userdebug/dev-keys
----- Output from /proc/pressure/memory -----
some avg10=0.00 avg60=0.03 avg300=0.00 total=3911386
full avg10=0.00 avg60=0.01 avg300=0.00 total=1619113
----- End output from /proc/pressure/memory -----
CPU usage from 0ms to 8397ms later (2025-09-29 20:43:19.203 to 2025-09-29 20:43:27.601):
176% 32389/com.my.app: 121% user + 55% kernel / faults: 48948 minor 6 major
99% 458/system_server: 76% user + 23% kernel / faults: 146796 minor 1 major
40% 299/logd: 12% user + 28% kernel / faults: 99 minor
27% 2173/com.iflytek.cutefly.speechclient.hmi: 22% user + 4.8% kernel / faults: 2990 minor 14 major
18% 4234/logcat: 9.8% user + 8.2% kernel
17% 1417/com.desaysv.launcher: 10% user + 7.5% kernel / faults: 9649 minor 10 major
16% 1232/com.android.systemui: 12% user + 4.5% kernel / faults: 8100 minor 1 major
13% 2699/com.iflytek.autofly.sceneengine: 8.7% user + 4.8% kernel / faults: 5698 minor 1 major
13% 7521/com.desaysv.ivi.vds.carinfo: 7.1% user + 6% kernel / faults: 1607 minor
12% 1999/com.desaysv.setting: 8.1% user + 4.8% kernel / faults: 11763 minor 6 major
12% 219/irq/195-asm330l: 0% user + 12% kernel
10% 344/android.hardware.audio.service: 2.8% user + 7.3% kernel
9.2% 596/media.hwcodec: 2.3% user + 6.9% kernel
8.6% 312/surfaceflinger: 3.3% user + 5.3% kernel / faults: 878 minor
7.9% 7466/com.mytech.radio: 5.8% user + 2.1% kernel / faults: 7860 minor 1 major
7.7% 334/audioserver: 2% user + 5.7% kernel / faults: 380 minor
7.7% 2293/logcat: 0.7% user + 7% kernel
6.5% 556/android.hardware.sensors@1.0-service: 0.3% user + 6.1% kernel
5.5% 522/android.hardware.automotive.vehicle@2.0-service.g6: 2.2% user + 3.3% kernel / faults: 9 minor
5.6% 9322/logcat: 1.3% user + 4.2% kernel
0% 1077/media.codec: 0% user + 0% kernel / faults: 8984 minor 12 major
4% 7810/com.desaysv.ivi.vds.upgrade: 2.8% user + 1.1% kernel / faults: 3955 minor
3.3% 524/android.hardware.broadcastradio@2.0-service.g6: 0.4% user + 2.8% kernel / faults: 2578 minor 64 major
3.2% 561/com.desaysv.vehicledevice@1.0-service: 0.4% user + 2.7% kernel
2.8% 7556/com.desaysv.ivi.vds.media: 2.1% user + 0.7% kernel / faults: 2481 minor
2.8% 7680/com.desaysv.ivi.vds.carlan: 2% user + 0.8% kernel / faults: 3225 minor 1 major
2.6% 2893/com.mytech.voiceassistant: 1.3% user + 1.3% kernel / faults: 2063 minor 3 major
2.2% 1220/com.android.car: 1.5% user + 0.7% kernel / faults: 1708 minor 7 major
2% 1603/com.desaysv.ivi.vds.sms: 1% user + 0.9% kernel / faults: 1739 minor 14 major
1.9% 1045/drfusionservice: 0.4% user + 1.4% kernel
1.7% 310/android.hardware.graphics.composer@2.4-service: 1.1% user + 0.5% kernel / faults: 12 minor
1.7% 1028/android.hardware.wifi.nxp@1.0-service: 0.3% user + 1.4% kernel
1.6% 198/spi1: 0% user + 1.6% kernel
1.5% 1736/com.desaysv.ivi.vds.carstate: 0.8% user + 0.7% kernel / faults: 1591 minor
1.4% 6439/com.mytech.spotify: 1% user + 0.3% kernel / faults: 1223 minor
1.3% 2771/com.desaysv.bluetooth.phone: 0.5% user + 0.7% kernel / faults: 1450 minor 1 major
1.3% 27916/kworker/u16:0: 0% user + 1.3% kernel
0% 197/spi0: 0% user + 0% kernel
1.1% 3802/com.desaysv.vrcontrol: 0.5% user + 0.5% kernel / faults: 551 minor 1 major
1.1% 16819/com.android.commands.monkey: 0.5% user + 0.5% kernel / faults: 550 minor
1.1% 29677/kworker/u16:5-kverityd: 0% user + 1.1% kernel
1.1% 32069/kworker/u16:2-kverityd: 0% user + 1.1% kernel
1% 281/carwatchdogd: 0.3% user + 0.7% kernel / faults: 4 minor
1% 332/zygote64: 0% user + 1% kernel / faults: 1462 minor
0% 1094/media.swcodec: 0% user + 0% kernel / faults: 3342 minor 7 major
1% 2098/com.android.networkstack.process: 0.8% user + 0.2% kernel / faults: 1458 minor 6 major
1% 32071/kworker/u16:3-kverityd: 0% user + 1% kernel
0.9% 290/apr_vm_cb_threa: 0% user + 0.9% kernel
0.9% 3021/com.google.android.projection.sink: 0.4% user + 0.4% kernel / faults: 266 minor 1 major
0.2% 2321/com.desaysv.ivi.vds.bt: 0.1% user + 0% kernel / faults: 1424 minor 1 major
0.8% 2518/kworker/u17:5-MOAL_WORK_QUEUE: 0% user + 0.8% kernel
0.2% 2929/com.desaysv.ivi.vds.log: 0.1% user + 0% kernel / faults: 1333 minor 1 major
0.8% 3063/com.desaysv.vehicle.carplayapp: 0.4% user + 0.3% kernel / faults: 579 minor
0.8% 7313/com.desaysv.engmode: 0.5% user + 0.2% kernel / faults: 1025 minor
0.8% 7703/com.desaysv.ivi.adapterservice:visualizer: 0.3% user + 0.4% kernel / faults: 863 minor
0.8% 32467/com.spotify.music: 0.3% user + 0.4% kernel / faults: 4 minor
0% 1065/media.extractor: 0% user + 0% kernel / faults: 1829 minor 4 major
0.7% 1084/cvdrservice: 0.2% user + 0.4% kernel
0% 1710/com.desaysv.ivi.vds.rvc: 0% user + 0% kernel / faults: 1355 minor 1 major
0% 2735/com.desaysv.ivi.adapterservice: 0% user + 0% kernel / faults: 1291 minor 1 major
0.7% 2993/com.desaysv.vrservice: 0.4% user + 0.2% kernel / faults: 1395 minor 6 major
0.7% 32492/com.mytech.membercenter: 0.2% user + 0.4% kernel / faults: 295 minor
0.5% 562/com.desaysv.vehiclelan.proxy@1.0-service: 0% user + 0.5% kernel / faults: 2 minor
0% 1395/com.android.providers.media.module: 0% user + 0% kernel / faults: 546 minor 1 major
0.5% 4083/kworker/u17:6-fscrypt_read_queue: 0% user + 0.5% kernel
0% 32617/kworker/u17:4-fscrypt_read_queue: 0% user + 0% kernel
0.4% 478/statsd: 0% user + 0.4% kernel / faults: 95 minor 1 major
0.4% 610/android.hardware.dsp@1.0-service: 0.1% user + 0.3% kernel / faults: 2983 minor
0.4% 1176/com.android.bluetooth: 0% user + 0.4% kernel / faults: 286 minor 25 major
0% 2838/com.desaysv.ivi.vds.projection: 0% user + 0% kernel / faults: 1355 minor 6 major
0.4% 7657/com.desaysv.ivi.adapterservice:hvacdvc: 0.3% user + 0.1% kernel / faults: 504 minor
0.4% 27000/kworker/u17:1-fscrypt_read_queue: 0% user + 0.4% kernel
0.3% 10/rcu_preempt: 0% user + 0.3% kernel
0.3% 402/jbd2/vdd44-8: 0% user + 0.3% kernel
0.3% 479/netd: 0.1% user + 0.2% kernel / faults: 148 minor
0.3% 536/android.hardware.gnss@1.0-service: 0.1% user + 0.2% kernel / faults: 7 minor
0.3% 3228/com.mytech.weather: 0.1% user + 0.2% kernel / faults: 178 minor
0.3% 7377/com.desaysv.ivi.adapterservice:sdvc: 0.2% user + 0.1% kernel / faults: 191 minor
0.3% 17833/kworker/u17:3-MOAL_WORK_QUEUE: 0% user + 0.3% kernel
0.3% 30798/kworker/u16:1-kverityd: 0% user + 0.3% kernel
0.2% 9/ksoftirqd/0: 0% user + 0.2% kernel
0.2% 145/system: 0% user + 0.2% kernel
0.2% 301/servicemanager: 0.2% user + 0% kernel
0% 457/tombstoned: 0% user + 0% kernel / faults: 23 minor 48 major
0.2% 1044/desaysv_solver: 0% user + 0.2% kernel
0.2% 7409/com.desaysv.ivi.vds.vr: 0.2% user + 0% kernel / faults: 176 minor
0.2% 7599/kworker/u17:2-fscrypt_read_queue: 0% user + 0.2% kernel
0.1% 1/init: 0.1% user + 0% kernel / faults: 16 minor
0.1% 15/ksoftirqd/1: 0% user + 0.1% kernel
0.1% 21/ksoftirqd/2: 0% user + 0.1% kernel
0.1% 26/ksoftirqd/3: 0% user + 0.1% kernel
0.1% 31/ksoftirqd/4: 0% user + 0.1% kernel
0.1% 36/ksoftirqd/5: 0% user + 0.1% kernel
0.1% 41/ksoftirqd/6: 0% user + 0.1% kernel
0.1% 46/ksoftirqd/7: 0% user + 0.1% kernel
0% 185/kworker/2:1H-kblockd: 0% user + 0% kernel
0.1% 190/kworker/3:1H-kblockd: 0% user + 0.1% kernel
0.1% 193/kworker/0:1H-kblockd: 0% user + 0.1% kernel
0.1% 254/kworker/4:1H-kblockd: 0% user + 0.1% kernel
0.1% 272/kworker/5:1H-kblockd: 0% user + 0.1% kernel
0.1% 300/lmkd: 0% user + 0.1% kernel
0.1% 309/vendor.qti.hardware.display.allocator-service: 0% user + 0.1% kernel
0% 353/vold: 0% user + 0% kernel / faults: 29 minor
0.1% 525/android.hardware.camera.provider@2.4-service_64: 0% user + 0.1% kernel
0% 1047/drmserver: 0% user + 0% kernel / faults: 79 minor 9 major
0% 1066/mediaserver: 0% user + 0% kernel / faults: 99 minor 4 major
0% 1081/com.desaysv.ivi.watchdog@1.0-service: 0% user + 0% kernel
0% 1089/ipacm-diag: 0% user + 0% kernel
0.1% 1092/ipacm: 0% user + 0.1% kernel
0.1% 1520/sh: 0% user + 0.1% kernel / faults: 552 minor
0% 2401/com.mytech.auto.tsp.service: 0% user + 0% kernel / faults: 13 minor
0.1% 6058/kworker/u16:6-kverityd: 0% user + 0.1% kernel
0% 6563/sh: 0% user + 0% kernel / faults: 560 minor
0.1% 16763/adbd: 0% user + 0.1% kernel / faults: 1 minor
0.1% 27962/kworker/2:2-cgroup_pidlist_destroy: 0% user + 0.1% kernel
+0% 7836/com.android.permissioncontroller: 0% user + 0% kernel
+0% 7881/com.desaysv.ivi.vds.tuner: 0% user + 0% kernel
+0% 7903/com.mytech.outside.datapoint: 0% user + 0% kernel
+0% 7925/com.desaysv.ivi.vds.navi: 0% user + 0% kernel
+0% 7950/com.desaysv.service.link: 0% user + 0% kernel
+0% 7972/com.desaysv.audioapp: 0% user + 0% kernel
+0% 8129/com.desaysv.meterinteraction: 0% user + 0% kernel
+0% 8288/sleep: 0% user + 0% kernel
+0% 8303/sleep: 0% user + 0% kernel
77% TOTAL: 44% user + 30% kernel + 0.4% iowait + 1.9% irq + 0.6% softirq
----- pid 32389 at 2025-09-29 20:43:20 -----
Cmd line: com.my.app
Build fingerprint: 'DesaySV/g7ph_t22_int/msmnile_gvmq:11/RQ3A.210805.001.A1/eng.sreadm.20250928.104050:userdebug/dev-keys'
ABI: 'arm64'
Build type: optimized
Zygote loaded classes=16819 post zygote classes=11503
Dumping registered class loaders
#0 dalvik.system.PathClassLoader: [], parent #1
#1 java.lang.BootClassLoader: [], no parent
#2 dalvik.system.PathClassLoader: [/data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk:/data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!classes5.dex:/data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!classes18.dex:/data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!classes17.dex:/data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!classes6.dex:/data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!classes11.dex:/data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!classes15.dex:/data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!classes20.dex:/data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!classes19.dex:/data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!classes13.dex:/data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!classes16.dex:/data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!classes4.dex:/data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!classes12.dex:/data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!classes14.dex:/data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!classes8.dex:/data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!classes10.dex:/data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!classes2.dex:/data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!classes9.dex:/data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!classes3.dex:/data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!classes7.dex], parent #1
Done dumping class loaders
Classes initialized: 5528 in 2.445s
Intern table: 43781 strong; 2361 weak
JNI: CheckJNI is on; globals=792 (plus 84 weak)
Libraries: /data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!/lib/arm64-v8a/libGwiVdr.so /data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!/lib/arm64-v8a/libapmnative.so /data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!/lib/arm64-v8a/libcybersdk.so /data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!/lib/arm64-v8a/libmap.so /data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!/lib/arm64-v8a/libmmkv.so /data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!/lib/arm64-v8a/libnative-lib.so /data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!/lib/arm64-v8a/libnative_crash.so /data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!/lib/arm64-v8a/libnaviClient.so /data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!/lib/arm64-v8a/libucs-credential.so libandroid.so libaudioeffect_jni.so libcompiler_rt.so libicu_jni.so libjavacore.so libjavacrypto.so libjnigraphics.so libmedia_jni.so libopenjdk.so librs_jni.so libsfplugin_ccodec.so libsoundpool.so libstats_jni.so libwebviewchromium_loader.so (23)
Heap: 0% free, 39MB/39MB; 347193 objects
Dumping cumulative Gc timings
Start Dumping histograms for 120 iterations for concurrent copying
MarkingPhase: Sum: 5.947s 99% C.I. 22.451ms-240.639ms Avg: 49.565ms Max: 386.340ms
ScanCardsForSpace: Sum: 2.689s 99% C.I. 6.188ms-99.519ms Avg: 22.412ms Max: 102.238ms
ScanImmuneSpaces: Sum: 1.142s 99% C.I. 2.364ms-19.519ms Avg: 4.758ms Max: 20.764ms
ProcessMarkStack: Sum: 975.017ms 99% C.I. 2.323ms-69.440ms Avg: 8.125ms Max: 69.855ms
ClearFromSpace: Sum: 950.704ms 99% C.I. 1.959ms-30.639ms Avg: 7.922ms Max: 33.626ms
VisitConcurrentRoots: Sum: 781.035ms 99% C.I. 1.302ms-23.199ms Avg: 3.254ms Max: 41.559ms
SweepSystemWeaks: Sum: 778.213ms 99% C.I. 0.756ms-23.199ms Avg: 6.485ms Max: 25.242ms
CaptureThreadRootsForMarking: Sum: 294.809ms 99% C.I. 0.596ms-26.159ms Avg: 2.456ms Max: 29.695ms
FlipOtherThreads: Sum: 141.966ms 99% C.I. 0.289ms-6.179ms Avg: 1.183ms Max: 9.224ms
EnqueueFinalizerReferences: Sum: 131.604ms 99% C.I. 0.068ms-16.559ms Avg: 1.096ms Max: 22.749ms
ProcessReferences: Sum: 100.734ms 99% C.I. 1us-5559.999us Avg: 419.725us Max: 8448us
ForwardSoftReferences: Sum: 79.984ms 99% C.I. 127us-7959.999us Avg: 666.533us Max: 16472us
GrayAllDirtyImmuneObjects: Sum: 51.205ms 99% C.I. 138us-8839.999us Avg: 426.708us Max: 13883us
SweepLargeObjects: Sum: 46.663ms 99% C.I. 11us-3139.999us Avg: 388.858us Max: 4820us
InitializePhase: Sum: 46.308ms 99% C.I. 123us-5679.999us Avg: 385.900us Max: 9634us
ThreadListFlip: Sum: 43.237ms 99% C.I. 23us-10279.999us Avg: 360.308us Max: 18688us
ResumeRunnableThreads: Sum: 38.936ms 99% C.I. 4us-14239.999us Avg: 324.466us Max: 32821us
CopyingPhase: Sum: 27.656ms 99% C.I. 19us-5699.999us Avg: 230.466us Max: 7104us
ReclaimPhase: Sum: 26.237ms 99% C.I. 7us-4999.999us Avg: 218.641us Max: 6480us
VisitNonThreadRoots: Sum: 17.324ms 99% C.I. 33us-379.999us Avg: 72.183us Max: 460us
FlipThreadRoots: Sum: 16.297ms 99% C.I. 0.530us-5379.999us Avg: 135.808us Max: 8440us
EmptyRBMarkBitStack: Sum: 15.477ms 99% C.I. 10us-1669.999us Avg: 128.975us Max: 1694us
MarkStackAsLive: Sum: 12.810ms 99% C.I. 7us-2859.999us Avg: 106.750us Max: 2927us
ResumeOtherThreads: Sum: 10.738ms 99% C.I. 2us-2699.999us Avg: 89.483us Max: 5007us
RecordFree: Sum: 9.940ms 99% C.I. 46us-389.999us Avg: 82.833us Max: 442us
MarkZygoteLargeObjects: Sum: 3.064ms 99% C.I. 10us-185us Avg: 25.533us Max: 197us
SweepAllocSpace: Sum: 2.164ms 99% C.I. 8us-86us Avg: 18.033us Max: 86us
SwapBitmaps: Sum: 1.889ms 99% C.I. 7us-189.999us Avg: 15.741us Max: 223us
(Paused)GrayAllNewlyDirtyImmuneObjects: Sum: 1.736ms 99% C.I. 7us-106us Avg: 14.466us Max: 106us
Sweep: Sum: 456us 99% C.I. 1us-85us Avg: 3.800us Max: 99us
(Paused)SetFromSpace: Sum: 446us 99% C.I. 1us-59us Avg: 3.716us Max: 59us
UnBindBitmaps: Sum: 334us 99% C.I. 1us-41us Avg: 2.783us Max: 41us
(Paused)FlipCallback: Sum: 280us 99% C.I. 1us-23us Avg: 2.333us Max: 23us
(Paused)ClearCards: Sum: 112us 99% C.I. 250ns-42000ns Avg: 51ns Max: 42000ns
Done Dumping histograms
concurrent copying paused: Sum: 44.911ms 99% C.I. 35us-10599.999us Avg: 374.258us Max: 18717us
concurrent copying freed-bytes: Avg: 17MB Max: 26MB Min: 4266KB
Freed-bytes histogram: 2560:1,5120:2,10240:2,12800:1,15360:50,17920:45,20480:13,23040:4,25600:2
concurrent copying total time: 14.386s mean time: 119.891ms
concurrent copying freed: 40962831 objects with total size 2142MB
concurrent copying throughput: 2.84741e+06/s / 148MB/s per cpu-time: 207772744/s / 198MB/s
Average major GC reclaim bytes ratio 0.484988 over 120 GC cycles
Average major GC copied live bytes ratio 0.0655301 over 124 major GCs
Cumulative bytes moved 104088344
Cumulative objects moved 1941758
Peak regions allocated 243 (60MB) / 2048 (512MB)
Start Dumping histograms for 966 iterations for young concurrent copying
ClearFromSpace: Sum: 6.045s 99% C.I. 1.923ms-32.543ms Avg: 6.258ms Max: 50.083ms
SweepSystemWeaks: Sum: 5.275s 99% C.I. 0.667ms-22.535ms Avg: 5.460ms Max: 41.525ms
ScanCardsForSpace: Sum: 5.183s 99% C.I. 1.288ms-29.343ms Avg: 5.366ms Max: 85.915ms
ScanImmuneSpaces: Sum: 3.918s 99% C.I. 2.028ms-16.233ms Avg: 4.056ms Max: 24.670ms
ProcessMarkStack: Sum: 3.011s 99% C.I. 0.654ms-30.943ms Avg: 3.117ms Max: 110.576ms
VisitConcurrentRoots: Sum: 2.199s 99% C.I. 1.332ms-15.667ms Avg: 2.276ms Max: 21.862ms
FlipOtherThreads: Sum: 995.514ms 99% C.I. 0.223ms-7.901ms Avg: 1.030ms Max: 10.031ms
ProcessReferences: Sum: 622.737ms 99% C.I. 1.977us-2934us Avg: 322.327us Max: 11849us
InitializePhase: Sum: 429.004ms 99% C.I. 247us-4101.999us Avg: 444.103us Max: 10564us
CopyingPhase: Sum: 304.119ms 99% C.I. 17us-12067.999us Avg: 314.822us Max: 29819us
GrayAllDirtyImmuneObjects: Sum: 265.200ms 99% C.I. 110us-1816.999us Avg: 274.534us Max: 6667us
EnqueueFinalizerReferences: Sum: 231.764ms 99% C.I. 35us-3216.999us Avg: 239.921us Max: 6034us
ThreadListFlip: Sum: 140.204ms 99% C.I. 10us-2516.999us Avg: 145.138us Max: 3983us
SweepArray: Sum: 118.246ms 99% C.I. 3us-1630.833us Avg: 122.407us Max: 3563us
ReclaimPhase: Sum: 105.180ms 99% C.I. 8us-4701.999us Avg: 108.881us Max: 16388us
FlipThreadRoots: Sum: 102.801ms 99% C.I. 0.529us-4516.999us Avg: 106.419us Max: 8964us
ResumeOtherThreads: Sum: 87.385ms 99% C.I. 1.048us-3301.999us Avg: 90.460us Max: 11669us
RecordFree: Sum: 84.977ms 99% C.I. 1.013us-370.444us Avg: 43.983us Max: 11961us
EmptyRBMarkBitStack: Sum: 81.660ms 99% C.I. 5us-1601.999us Avg: 84.534us Max: 7258us
ForwardSoftReferences: Sum: 62.029ms 99% C.I. 10us-486.166us Avg: 64.212us Max: 1226us
VisitNonThreadRoots: Sum: 53.384ms 99% C.I. 30us-316.999us Avg: 55.262us Max: 669us
ResumeRunnableThreads: Sum: 52.620ms 99% C.I. 2us-1242.499us Avg: 54.472us Max: 4782us
(Paused)GrayAllNewlyDirtyImmuneObjects: Sum: 14.156ms 99% C.I. 7us-92.374us Avg: 14.654us Max: 977us
ResetStack: Sum: 13.708ms 99% C.I. 3us-158.499us Avg: 14.190us Max: 1080us
MarkZygoteLargeObjects: Sum: 7.439ms 99% C.I. 4us-52.124us Avg: 7.700us Max: 147us
FreeList: Sum: 6.576ms 99% C.I. 1us-93.499us Avg: 7.884us Max: 145us
SwapBitmaps: Sum: 6.544ms 99% C.I. 4us-61.700us Avg: 6.774us Max: 174us
UnBindBitmaps: Sum: 5.644ms 99% C.I. 3us-84.749us Avg: 5.842us Max: 179us
(Paused)SetFromSpace: Sum: 3.224ms 99% C.I. 1us-49.956us Avg: 3.337us Max: 205us
(Paused)FlipCallback: Sum: 2.363ms 99% C.I. 1us-49.853us Avg: 2.446us Max: 530us
(Paused)ClearCards: Sum: 421us 99% C.I. 250ns-49755ns Avg: 24ns Max: 62000ns
Done Dumping histograms
young concurrent copying paused: Sum: 158.593ms 99% C.I. 22us-2646.250us Avg: 164.174us Max: 3702us
young concurrent copying freed-bytes: Avg: 15MB Max: 28MB Min: 5386KB
Freed-bytes histogram: 5120:2,7680:31,10240:120,12800:259,15360:407,17920:130,20480:13,23040:3,28160:1
young concurrent copying total time: 29.431s mean time: 30.467ms
young concurrent copying freed: 296583162 objects with total size 14GB
young concurrent copying throughput: 1.00772e+07/s / 498MB/s per cpu-time: 663068633/s / 632MB/s
Average minor GC reclaim bytes ratio 0.433989 over 966 GC cycles
Average minor GC copied live bytes ratio 0.00716444 over 967 minor GCs
Cumulative bytes moved 103903848
Cumulative objects moved 2573349
Peak regions allocated 243 (60MB) / 2048 (512MB)
Total time spent in GC: 43.818s
Mean GC size throughput: 383MB/s per cpu-time: 494MB/s
Mean GC object throughput: 7.70334e+06 objects/s
Total number of allocations 337893186
Total bytes allocated 16GB
Total bytes freed 16GB
Free memory 21MB
Free memory until GC 21MB
Free memory until OOME 490MB
Total memory 43MB
Max memory 512MB
Zygote space size 3324KB
Total mutator paused time: 203.504ms
Total time waiting for GC to complete: 348.874ms
Total GC count: 1086
Total GC time: 43.818s
Total blocking GC count: 3
Total blocking GC time: 735.252ms
Histogram of GC count per 10000 ms: 0:469,1:294,2:259,3:33,4:18,5:7,6:4,7:5,8:1
Histogram of blocking GC count per 10000 ms: 0:1088,1:2
Native bytes total: 105463300 registered: 223860
Total native bytes at last GC: 105674516
/system/framework/oat/arm64/android.hidl.manager-V1.0-java.odex: quicken
/system/framework/oat/arm64/org.apache.http.legacy.odex: speed-profile
/system/framework/oat/arm64/android.test.base.odex: quicken
/system/framework/oat/arm64/android.hidl.base-V1.0-java.odex: quicken
Current JIT code cache size (used / resident): 3906KB / 3984KB
Current JIT data cache size (used / resident): 2723KB / 2928KB
Zygote JIT code cache size (at point of fork): 43KB / 48KB
Zygote JIT data cache size (at point of fork): 41KB / 44KB
Current JIT mini-debug-info size: 559KB
Current JIT capacity: 8192KB
Current number of JIT JNI stub entries: 9
Current number of JIT code cache entries: 9783
Total number of JIT compilations: 10398
Total number of JIT compilations for on stack replacement: 127
Total number of JIT code cache collections: 20
Memory used for stack maps: Avg: 107B Max: 14KB Min: 16B
Memory used for compiled code: Avg: 445B Max: 44KB Min: 20B
Memory used for profiling info: Avg: 115B Max: 12KB Min: 32B
Start Dumping histograms for 10458 iterations for JIT timings
Compiling: Sum: 11.439s 99% C.I. 0.087ms-9.761ms Avg: 1.095ms Max: 114.342ms
Code cache collection: Sum: 686.744ms 99% C.I. 0.596ms-131.840ms Avg: 34.337ms Max: 136.564ms
TrimMaps: Sum: 502.625ms 99% C.I. 0.355us-344.785us Avg: 48.153us Max: 1736us
Done Dumping histograms
Memory used for compilation: Avg: 47KB Max: 4384KB Min: 0B
ProfileSaver total_bytes_written=2260483
ProfileSaver total_number_of_writes=30
ProfileSaver total_number_of_code_cache_queries=170
ProfileSaver total_number_of_skipped_writes=140
ProfileSaver total_number_of_failed_writes=0
ProfileSaver total_ms_of_sleep=10882001
ProfileSaver total_ms_of_work=5925
ProfileSaver total_number_of_hot_spikes=317
ProfileSaver total_number_of_wake_ups=459
suspend all histogram: Sum: 173.573ms 99% C.I. 2.695us-2882.560us Avg: 158.369us Max: 18681us
DALVIK THREADS (139):
"Timer-2" prio=5 tid=72 Runnable
| group="main" sCount=0 dsCount=0 flags=0 obj=0x142cb720 self=0xb400007ace4837f0
| sysTid=16981 nice=0 cgrp=foreground sched=0/0 handle=0x78c158bcc0
| state=R schedstat=( 91956487537 53027179379 643637 ) utm=5776 stm=3418 core=6 HZ=100
| stack=0x78c1488000-0x78c148a000 stackSize=1043KB
| held mutexes= "mutator lock"(shared held)
at android.os.MessageQueue.enqueueMessage(MessageQueue.java:583)
- locked <0x0ee99ab9> (a android.os.MessageQueue)
at android.os.Handler.enqueueMessage(Handler.java:778)
at android.os.Handler.sendMessageAtTime(Handler.java:727)
at android.os.Handler.sendMessageDelayed(Handler.java:697)
at android.os.Handler.sendEmptyMessageDelayed(Handler.java:662)
at android.os.Handler.sendEmptyMessage(Handler.java:647)
at com.my.app.gwi.VehicleRoomManager$2.run(VehicleRoomManager.java:252)
at java.util.TimerThread.mainLoop(Timer.java:562)
at java.util.TimerThread.run(Timer.java:512)
"Signal Catcher" daemon prio=10 tid=6 Runnable
| group="system" sCount=0 dsCount=0 flags=0 obj=0x13a80078 self=0xb400007ace3f86f0
| sysTid=32409 nice=-20 cgrp=foreground sched=0/0 handle=0x794e873cc0
| state=R schedstat=( 52857971 11671406 41 ) utm=2 stm=2 core=4 HZ=100
| stack=0x794e77c000-0x794e77e000 stackSize=995KB
| held mutexes= "mutator lock"(shared held)
native: #00 pc 000000000049f3f8 /apex/com.android.art/lib64/libart.so (art::DumpNativeStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, int, BacktraceMap*, char const*, art::ArtMethod*, void*, bool)+140)
native: #01 pc 00000000005ac5b4 /apex/com.android.art/lib64/libart.so (art::Thread::DumpStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, bool, BacktraceMap*, bool) const+376)
native: #02 pc 00000000005c96ec /apex/com.android.art/lib64/libart.so (art::DumpCheckpoint::Run(art::Thread*)+924)
native: #03 pc 00000000005c362c /apex/com.android.art/lib64/libart.so (art::ThreadList::RunCheckpoint(art::Closure*, art::Closure*)+528)
native: #04 pc 00000000005c27f8 /apex/com.android.art/lib64/libart.so (art::ThreadList::Dump(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, bool)+1920)
native: #05 pc 00000000005c1c98 /apex/com.android.art/lib64/libart.so (art::ThreadList::DumpForSigQuit(std::__1::basic_ostream<char, std::__1::char_traits<char> >&)+776)
native: #06 pc 000000000056dc58 /apex/com.android.art/lib64/libart.so (art::Runtime::DumpForSigQuit(std::__1::basic_ostream<char, std::__1::char_traits<char> >&)+196)
native: #07 pc 00000000005831ec /apex/com.android.art/lib64/libart.so (art::SignalCatcher::HandleSigQuit()+1396)
native: #08 pc 00000000005821b8 /apex/com.android.art/lib64/libart.so (art::SignalCatcher::Run(void*)+348)
native: #09 pc 00000000000afecc /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)
native: #10 pc 0000000000050408 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
(no managed stack frames)
"FilePrinter.imu_acc59755849" prio=5 tid=35 Runnable
| group="main" sCount=0 dsCount=0 flags=0 obj=0x155d1290 self=0xb400007ace549a90
| sysTid=7835 nice=0 cgrp=foreground sched=0/0 handle=0x78d80c3cc0
| state=R schedstat=( 156158969 309068223 349 ) utm=10 stm=5 core=0 HZ=100
| stack=0x78d7fc0000-0x78d7fc2000 stackSize=1043KB
| held mutexes= "mutator lock"(shared held)
at android.system.StructTimespec.<init>(StructTimespec.java:31)
at libcore.io.Linux.stat(Native method)
at libcore.io.ForwardingOs.stat(ForwardingOs.java:221)
at libcore.io.BlockGuardOs.stat(BlockGuardOs.java:391)
at libcore.io.ForwardingOs.stat(ForwardingOs.java:221)
at android.app.ActivityThread$AndroidOs.stat(ActivityThread.java:7605)
at java.io.UnixFileSystem.getLength(UnixFileSystem.java:298)
at java.io.File.length(File.java:970)
at com.huawei.maps.app.common.utils.applog.goto.a(SourceFile:182)
- locked <0x0ab16efe> (a java.lang.Object)
at com.huawei.maps.app.common.utils.applog.v2.printer.for$if.handleMessage(SourceFile:10)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:223)
at android.os.HandlerThread.run(HandlerThread.java:67)
"main" prio=5 tid=1 Native
| group="main" sCount=1 dsCount=0 flags=1 obj=0x73064d58 self=0xb400007ace3efbe0
| sysTid=32389 nice=-10 cgrp=foreground sched=0/0 handle=0x7c550a04f8
| state=S schedstat=( 171443379648 107102670456 1025801 ) utm=12487 stm=4656 core=3 HZ=100
| stack=0x7febe1d000-0x7febe1f000 stackSize=8192KB
| held mutexes=
native: #00 pc 000000000004b4cc /apex/com.android.runtime/lib64/bionic/libc.so (syscall+28)
native: #01 pc 00000000001af92c /apex/com.android.art/lib64/libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*)+148)
native: #02 pc 0000000000379260 /apex/com.android.art/lib64/libart.so (art::(anonymous namespace)::CheckJNI::CallMethodV(char const*, _JNIEnv*, _jobject*, _jclass*, _jmethodID*, std::__va_list, art::Primitive::Type, art::InvokeType)+512)
native: #03 pc 0000000000366e38 /apex/com.android.art/lib64/libart.so (art::(anonymous namespace)::CheckJNI::CallObjectMethodV(_JNIEnv*, _jobject*, _jmethodID*, std::__va_list)+72)
native: #04 pc 0000000000004040 /apex/com.android.art/lib64/libnativehelper.so (_JNIEnv::CallObjectMethod(_jobject*, _jmethodID*, ...)+124)
native: #05 pc 0000000000157640 /system/lib64/libandroid_runtime.so ((anonymous namespace)::Receiver::handleEvent(int, int, void*)+112)
native: #06 pc 0000000000019dac /system/lib64/libutils.so (android::Looper::pollInner(int)+916)
native: #07 pc 00000000000199b0 /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+112)
native: #08 pc 0000000000110f80 /system/lib64/libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long, int)+44)
at android.os.MessageQueue.nativePollOnce(Native method)
at android.os.MessageQueue.next(MessageQueue.java:335)
at android.os.Looper.loop(Looper.java:183)
at android.app.ActivityThread.main(ActivityThread.java:7705)
at java.lang.reflect.Method.invoke(Native method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1001)
"perfetto_hprof_listener" prio=10 tid=7 Native (still starting up)
| group="" sCount=1 dsCount=0 flags=1 obj=0x0 self=0xb400007ace3f17b0
| sysTid=32410 nice=-20 cgrp=foreground sched=0/0 handle=0x794a775cc0
| state=S schedstat=( 160468 227969 1 ) utm=0 stm=0 core=0 HZ=100
| stack=0x794a67e000-0x794a680000 stackSize=995KB
| held mutexes=
native: #00 pc 000000000009ae74 /apex/com.android.runtime/lib64/bionic/libc.so (read+4)
native: #01 pc 00000000000180bc /apex/com.android.art/lib64/libperfetto_hprof.so (void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, ArtPlugin_Initialize::$_29> >(void*)+280)
native: #02 pc 00000000000afecc /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)
native: #03 pc 0000000000050408 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
(no managed stack frames)
"ADB-JDWP Connection Control Thread" daemon prio=0 tid=8 WaitingInMainDebuggerLoop
| group="system" sCount=1 dsCount=0 flags=1 obj=0x13a80330 self=0xb400007ace3fa2c0
| sysTid=32411 nice=-20 cgrp=foreground sched=0/0 handle=0x794a677cc0
| state=S schedstat=( 413541 1093646 4 ) utm=0 stm=0 core=7 HZ=100
| stack=0x794a580000-0x794a582000 stackSize=995KB
| held mutexes=
native: #00 pc 000000000009c1b8 /apex/com.android.runtime/lib64/bionic/libc.so (__ppoll+8)
native: #01 pc 000000000005a3c0 /apex/com.android.runtime/lib64/bionic/libc.so (poll+92)
native: #02 pc 0000000000009efc /apex/com.android.art/lib64/libadbconnection.so (adbconnection::AdbConnectionState::RunPollLoop(art::Thread*)+828)
native: #03 pc 0000000000008578 /apex/com.android.art/lib64/libadbconnection.so (adbconnection::CallbackFunction(void*)+1508)
native: #04 pc 00000000000afecc /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)
native: #05 pc 0000000000050408 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
(no managed stack frames)
"Jit thread pool worker thread 0" daemon prio=5 tid=9 Native
| group="system" sCount=1 dsCount=0 flags=1 obj=0x13a85018 self=0xb400007ace4049a0
| sysTid=32412 nice=0 cgrp=foreground sched=0/0 handle=0x78ff653d00
| state=S schedstat=( 12794971530 4750349539 18559 ) utm=643 stm=635 core=3 HZ=100
| stack=0x78ff555000-0x78ff557000 stackSize=1023KB
| held mutexes=
native: #00 pc 000000000004b4cc /apex/com.android.runtime/lib64/bionic/libc.so (syscall+28)
native: #01 pc 00000000001af92c /apex/com.android.art/lib64/libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*)+148)
native: #02 pc 00000000005cb414 /apex/com.android.art/lib64/libart.so (art::ThreadPool::GetTask(art::Thread*)+120)
native: #03 pc 00000000005ca6b8 /apex/com.android.art/lib64/libart.so (art::ThreadPoolWorker::Run()+144)
native: #04 pc 00000000005ca188 /apex/com.android.art/lib64/libart.so (art::ThreadPoolWorker::Callback(void*)+192)
native: #05 pc 00000000000afecc /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)
native: #06 pc 0000000000050408 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
(no managed stack frames)
"FinalizerDaemon" daemon prio=5 tid=10 Waiting
| group="system" sCount=1 dsCount=0 flags=1 obj=0x13a804e0 self=0xb400007ace40f080
| sysTid=32415 nice=4 cgrp=foreground sched=0/0 handle=0x78fe33acc0
| state=S schedstat=( 360719691 93637201 1266 ) utm=28 stm=7 core=3 HZ=100
| stack=0x78fe237000-0x78fe239000 stackSize=1043KB
| held mutexes=
at java.lang.Object.wait(Native method)
- waiting on <0x03d1d65f> (a java.lang.Object)
at java.lang.Object.wait(Object.java:442)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:190)
- locked <0x03d1d65f> (a java.lang.Object)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:211)
at java.lang.Daemons$FinalizerDaemon.runInternal(Daemons.java:273)
at java.lang.Daemons$Daemon.run(Daemons.java:139)
at java.lang.Thread.run(Thread.java:923)
"FinalizerWatchdogDaemon" daemon prio=5 tid=11 Waiting
| group="system" sCount=1 dsCount=0 flags=1 obj=0x13a80c58 self=0xb400007ace409d10
| sysTid=32416 nice=4 cgrp=foreground sched=0/0 handle=0x78fe230cc0
| state=S schedstat=( 69411890 51222607 952 ) utm=4 stm=2 core=3 HZ=100
| stack=0x78fe12d000-0x78fe12f000 stackSize=1043KB
| held mutexes=
at java.lang.Object.wait(Native method)
- waiting on <0x0c2368ac> (a java.lang.Daemons$FinalizerWatchdogDaemon)
at java.lang.Object.wait(Object.java:442)
at java.lang.Object.wait(Object.java:568)
at java.lang.Daemons$FinalizerWatchdogDaemon.sleepUntilNeeded(Daemons.java:341)
- locked <0x0c2368ac> (a java.lang.Daemons$FinalizerWatchdogDaemon)
at java.lang.Daemons$FinalizerWatchdogDaemon.runInternal(Daemons.java:321)
at java.lang.Daemons$Daemon.run(Daemons.java:139)
at java.lang.Thread.run(Thread.java:923)
"ReferenceQueueDaemon" daemon prio=5 tid=12 Waiting
| group="system" sCount=1 dsCount=0 flags=1 obj=0x13a80f10 self=0xb400007ace406570
| sysTid=32414 nice=4 cgrp=foreground sched=0/0 handle=0x78fe444cc0
| state=S schedstat=( 2192172878 584212605 2036 ) utm=184 stm=34 core=7 HZ=100
| stack=0x78fe341000-0x78fe343000 stackSize=1043KB
| held mutexes=
at java.lang.Object.wait(Native method)
- waiting on <0x06002975> (a java.lang.Class<java.lang.ref.ReferenceQueue>)
at java.lang.Object.wait(Object.java:442)
at java.lang.Object.wait(Object.java:568)
at java.lang.Daemons$ReferenceQueueDaemon.runInternal(Daemons.java:217)
- locked <0x06002975> (a java.lang.Class<java.lang.ref.ReferenceQueue>)
at java.lang.Daemons$Daemon.run(Daemons.java:139)
at java.lang.Thread.run(Thread.java:923)
"Binder:32389_1" prio=5 tid=13 Native
| group="main" sCount=1 dsCount=0 flags=1 obj=0x13a80fc0 self=0xb400007ace40d4b0
| sysTid=32417 nice=0 cgrp=foreground sched=0/0 handle=0x78fe028cc0
| state=S schedstat=( 1895313544 3158522884 8374 ) utm=135 stm=54 core=4 HZ=100
| stack=0x78fdf31000-0x78fdf33000 stackSize=995KB
| held mutexes=
native: #00 pc 000000000009b0f4 /apex/com.android.runtime/lib64/bionic/libc.so (__ioctl+4)
native: #01 pc 0000000000057de0 /apex/com.android.runtime/lib64/bionic/libc.so (ioctl+156)
native: #02 pc 0000000000053a1c /system/lib64/libbinder.so (android::IPCThreadState::talkWithDriver(bool)+296)
native: #03 pc 0000000000053c0c /system/lib64/libbinder.so (android::IPCThreadState::getAndExecuteCommand()+24)
native: #04 pc 00000000000544c8 /system/lib64/libbinder.so (android::IPCThreadState::joinThreadPool(bool)+60)
native: #05 pc 000000000007c590 /system/lib64/libbinder.so (android::PoolThread::threadLoop()+24)
native: #06 pc 00000000000154d0 /system/lib64/libutils.so (android::Thread::_threadLoop(void*)+260)
native: #07 pc 00000000000a0be0 /system/lib64/libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*)+144)
native: #08 pc 0000000000014d94 /system/lib64/libutils.so (thread_data_t::trampoline(thread_data_t const*)+412)
native: #09 pc 00000000000afecc /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)
native: #10 pc 0000000000050408 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
(no managed stack frames)
"HeapTaskDaemon" daemon prio=5 tid=14 WaitingForTaskProcessor
| group="system" sCount=1 dsCount=0 flags=1 obj=0x13a833a0 self=0xb400007ace408140
| sysTid=32413 nice=4 cgrp=foreground sched=0/0 handle=0x78fe54ecc0
| state=S schedstat=( 34598570725 8354707774 20690 ) utm=2971 stm=488 core=2 HZ=100
| stack=0x78fe44b000-0x78fe44d000 stackSize=1043KB
| held mutexes=
native: #00 pc 000000000004b4d0 /apex/com.android.runtime/lib64/bionic/libc.so (syscall+32)
native: #01 pc 00000000001afcfc /apex/com.android.art/lib64/libart.so (art::ConditionVariable::TimedWait(art::Thread*, long, int)+172)
native: #02 pc 00000000002e5890 /apex/com.android.art/lib64/libart.so (art::gc::TaskProcessor::GetTask(art::Thread*)+512)
native: #03 pc 00000000002e61d8 /apex/com.android.art/lib64/libart.so (art::gc::TaskProcessor::RunAllTasks(art::Thread*)+92)
at dalvik.system.VMRuntime.runHeapTasks(Native method)
at java.lang.Daemons$HeapTaskDaemon.runInternal(Daemons.java:531)
at java.lang.Daemons$Daemon.run(Daemons.java:139)
at java.lang.Thread.run(Thread.java:923)
"Binder:32389_2" prio=5 tid=15 Native
| group="main" sCount=1 dsCount=0 flags=1 obj=0x13a82048 self=0xb400007ace40b8e0
| sysTid=32418 nice=0 cgrp=foreground sched=0/0 handle=0x78f9f2acc0
| state=S schedstat=( 1182221415 1333761710 5366 ) utm=75 stm=42 core=3 HZ=100
| stack=0x78f9e33000-0x78f9e35000 stackSize=995KB
| held mutexes=
native: #00 pc 000000000009b0f4 /apex/com.android.runtime/lib64/bionic/libc.so (__ioctl+4)
native: #01 pc 0000000000057de0 /apex/com.android.runtime/lib64/bionic/libc.so (ioctl+156)
native: #02 pc 0000000000053a1c /system/lib64/libbinder.so (android::IPCThreadState::talkWithDriver(bool)+296)
native: #03 pc 0000000000053c0c /system/lib64/libbinder.so (android::IPCThreadState::getAndExecuteCommand()+24)
native: #04 pc 00000000000544c8 /system/lib64/libbinder.so (android::IPCThreadState::joinThreadPool(bool)+60)
native: #05 pc 000000000007c590 /system/lib64/libbinder.so (android::PoolThread::threadLoop()+24)
native: #06 pc 00000000000154d0 /system/lib64/libutils.so (android::Thread::_threadLoop(void*)+260)
native: #07 pc 00000000000a0be0 /system/lib64/libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*)+144)
native: #08 pc 0000000000014d94 /system/lib64/libutils.so (thread_data_t::trampoline(thread_data_t const*)+412)
native: #09 pc 00000000000afecc /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)
native: #10 pc 0000000000050408 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
(no managed stack frames)
"Binder:32389_3" prio=5 tid=16 Native
| group="main" sCount=1 dsCount=0 flags=1 obj=0x13a820e0 self=0xb400007ace412820
| sysTid=32419 nice=0 cgrp=foreground sched=0/0 handle=0x78f7e2ccc0
| state=S schedstat=( 1922445271 890632578 4777 ) utm=154 stm=37 core=0 HZ=100
| stack=0x78f7d35000-0x78f7d37000 stackSize=995KB
| held mutexes=
native: #00 pc 000000000009b0f4 /apex/com.android.runtime/lib64/bionic/libc.so (__ioctl+4)
native: #01 pc 0000000000057de0 /apex/com.android.runtime/lib64/bionic/libc.so (ioctl+156)
native: #02 pc 0000000000053a1c /system/lib64/libbinder.so (android::IPCThreadState::talkWithDriver(bool)+296)
native: #03 pc 0000000000053c0c /system/lib64/libbinder.so (android::IPCThreadState::getAndExecuteCommand()+24)
native: #04 pc 00000000000544c8 /system/lib64/libbinder.so (android::IPCThreadState::joinThreadPool(bool)+60)
native: #05 pc 000000000007c590 /system/lib64/libbinder.so (android::PoolThread::threadLoop()+24)
native: #06 pc 00000000000154d0 /system/lib64/libutils.so (android::Thread::_threadLoop(void*)+260)
native: #07 pc 00000000000a0be0 /system/lib64/libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*)+144)
native: #08 pc 0000000000014d94 /system/lib64/libutils.so (thread_data_t::trampoline(thread_data_t const*)+412)
native: #09 pc 00000000000afecc /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)
native: #10 pc 0000000000050408 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
(no managed stack frames)
"Profile Saver" daemon prio=5 tid=17 Native
| group="system" sCount=1 dsCount=0 flags=1 obj=0x13a82158 self=0xb400007ace415fc0
| sysTid=32519 nice=9 cgrp=foreground sched=0/0 handle=0x78f3b43cc0
| state=S schedstat=( 5070531771 781546376 2308 ) utm=454 stm=52 core=7 HZ=100
| stack=0x78f3a4c000-0x78f3a4e000 stackSize=995KB
| held mutexes=
native: #00 pc 000000000004b4cc /apex/com.android.runtime/lib64/bionic/libc.so (syscall+28)
native: #01 pc 00000000001af92c /apex/com.android.art/lib64/libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*)+148)
native: #02 pc 0000000000354220 /apex/com.android.art/lib64/libart.so (art::ProfileSaver::Run()+484)
native: #03 pc 0000000000358fac /apex/com.android.art/lib64/libart.so (art::ProfileSaver::RunProfileSaverThread(void*)+180)
native: #04 pc 00000000000afecc /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)
native: #05 pc 0000000000050408 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
(no managed stack frames)
"WM.task-1" prio=5 tid=18 Waiting
| group="main" sCount=1 dsCount=0 flags=1 obj=0x13a821d0 self=0xb400007ace410c50
| sysTid=32562 nice=0 cgrp=foreground sched=0/0 handle=0x78f27cdcc0
| state=S schedstat=( 44669629 43947765 91 ) utm=4 stm=0 core=0 HZ=100
| stack=0x78f26ca000-0x78f26cc000 stackSize=1043KB
| held mutexes=
at sun.misc.Unsafe.park(Native method)
- waiting on an unknown object
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:190)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2067)
at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
"WM.task-2" prio=5 tid=19 Waiting
| group="main" sCount=1 dsCount=0 flags=1 obj=0x13a82478 self=0xb400007ace417b90
| sysTid=32581 nice=0 cgrp=foreground sched=0/0 handle=0x78f167bcc0
| state=S schedstat=( 1551667 10788750 2 ) utm=0 stm=0 core=3 HZ=100
| stack=0x78f1578000-0x78f157a000 stackSize=1043KB
| held mutexes=
at sun.misc.Unsafe.park(Native method)
- waiting on an unknown object
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:190)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2067)
at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
"Thread-2" prio=5 tid=20 Sleeping
| group="main" sCount=1 dsCount=0 flags=1 obj=0x13a82568 self=0xb400007ace41cf00
| sysTid=32591 nice=0 cgrp=foreground sched=0/0 handle=0x78f0571cc0
| state=S schedstat=( 5271086980 2702061881 56217 ) utm=388 stm=138 core=5 HZ=100
| stack=0x78f046e000-0x78f0470000 stackSize=1043KB
| held mutexes=
at java.lang.Thread.sleep(Native method)
- sleeping on <0x00317d0a> (a java.lang.Object)
at java.lang.Thread.sleep(Thread.java:442)
- locked <0x00317d0a> (a java.lang.Object)
at java.lang.Thread.sleep(Thread.java:358)
at com.desaysv.ivi.extra.project.carinfo.proxy.CarInfoTimer$1.run(CarInfoTimer.java:27)
at java.lang.Thread.run(Thread.java:923)
"VDBus_DISPATCH" prio=5 tid=21 Native
| group="main" sCount=1 dsCount=0 flags=1 obj=0x13a82670 self=0xb400007ace4206a0
| sysTid=32596 nice=0 cgrp=foreground sched=0/0 handle=0x78ef467cc0
| state=S schedstat=( 356198 8528229 1 ) utm=0 stm=0 core=1 HZ=100
| stack=0x78ef364000-0x78ef366000 stackSize=1043KB
| held mutexes=
native: #00 pc 000000000009c0b8 /apex/com.android.runtime/lib64/bionic/libc.so (__epoll_pwait+8)
native: #01 pc 0000000000019ad0 /system/lib64/libutils.so (android::Looper::pollInner(int)+184)
native: #02 pc 00000000000199b0 /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+112)
native: #03 pc 0000000000110f80 /system/lib64/libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long, int)+44)
at android.os.MessageQueue.nativePollOnce(Native method)
at android.os.MessageQueue.next(MessageQueue.java:335)
at android.os.Looper.loop(Looper.java:183)
at android.os.HandlerThread.run(HandlerThread.java:67)
"Timer-0" prio=5 tid=23 Waiting
| group="main" sCount=1 dsCount=0 flags=1 obj=0x13a82c40 self=0xb400007ace422270
| sysTid=32602 nice=0 cgrp=foreground sched=0/0 handle=0x78ee35dcc0
| state=S schedstat=( 161980 4938177 1 ) utm=0 stm=0 core=3 HZ=100
| stack=0x78ee25a000-0x78ee25c000 stackSize=1043KB
| held mutexes=
at java.lang.Object.wait(Native method)
- waiting on <0x08e7797b> (a java.util.TaskQueue)
at java.lang.Object.wait(Object.java:442)
at java.lang.Object.wait(Object.java:568)
at java.util.TimerThread.mainLoop(Timer.java:533)
- locked <0x08e7797b> (a java.util.TaskQueue)
at java.util.TimerThread.run(Timer.java:512)
"pool-6-thread-1" prio=5 tid=25 Native
| group="main" sCount=1 dsCount=0 flags=1 obj=0x13a80000 self=0xb400007ace425a10
| sysTid=32629 nice=0 cgrp=foreground sched=0/0 handle=0x78eb03fcc0
| state=S schedstat=( 4892439232 945448272 4234 ) utm=424 stm=65 core=7 HZ=100
| stack=0x78eaf3c000-0x78eaf3e000 stackSize=1043KB
| held mutexes=
native: #00 pc 000000000009b898 /apex/com.android.runtime/lib64/bionic/libc.so (nanosleep+8)
native: #01 pc 00000000001fa794 /data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!libscm.so (offset 484b000) (???)
native: #02 pc 00000000001efcbc /data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!libscm.so (offset 484b000) (IW_ApplyCertificate+92)
native: #03 pc 0000000000027498 /data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk!libcybersdk.so (offset 31a0000) (Java_com_iwall_cybersdk_NativeLib_applyCertificate+3284)
native: #04 pc 000000000013ced4 /apex/com.android.art/lib64/libart.so (art_quick_generic_jni_trampoline+148)
native: #05 pc 0000000000133564 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+548)
native: #06 pc 00000000001a8a78 /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+200)
native: #07 pc 00000000003188d8 /apex/com.android.art/lib64/libart.so (art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)+376)
native: #08 pc 000000000030fcc4 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<true, false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+696)
native: #09 pc 0000000000680480 /apex/com.android.art/lib64/libart.so (MterpInvokeVirtualRange+712)
native: #10 pc 000000000012db14 /apex/com.android.art/lib64/libart.so (mterp_op_invoke_virtual_range+20)
native: #11 pc 00000000003c2d18 /data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk (offset 12df000) (com.iwall.cybersdk.CyberSDK.applyCertificate+272)
native: #12 pc 0000000000680624 /apex/com.android.art/lib64/libart.so (MterpInvokeVirtualRange+1132)
native: #13 pc 000000000012db14 /apex/com.android.art/lib64/libart.so (mterp_op_invoke_virtual_range+20)
native: #14 pc 00000000003c2bee /data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk (offset 12df000) (com.iwall.cybersdk.CyberSDK.applyCertificate+14)
native: #15 pc 000000000067cda0 /apex/com.android.art/lib64/libart.so (MterpInvokeVirtual+1520)
native: #16 pc 000000000012d814 /apex/com.android.art/lib64/libart.so (mterp_op_invoke_virtual+20)
native: #17 pc 000000000041ef7c /data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk (offset 12df000) (com.mytech.base.network.OkGoUtil.initCertificate+360)
native: #18 pc 0000000000306200 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.llvm.6432830707213048161)+268)
native: #19 pc 000000000066b808 /apex/com.android.art/lib64/libart.so (artQuickToInterpreterBridge+780)
native: #20 pc 000000000013cff8 /apex/com.android.art/lib64/libart.so (art_quick_to_interpreter_bridge+88)
native: #21 pc 00000000023e0854 /memfd:jit-cache (deleted) (offset 2000000) (com.mytech.base.network.OkGoUtil.initPki+1140)
native: #22 pc 00000000001337e8 /apex/com.android.art/lib64/libart.so (art_quick_invoke_static_stub+568)
native: #23 pc 00000000001a8a94 /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+228)
native: #24 pc 00000000003188d8 /apex/com.android.art/lib64/libart.so (art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)+376)
native: #25 pc 000000000030ec04 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false, false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+996)
native: #26 pc 000000000067fa58 /apex/com.android.art/lib64/libart.so (MterpInvokeStatic+548)
native: #27 pc 000000000012d994 /apex/com.android.art/lib64/libart.so (mterp_op_invoke_static+20)
native: #28 pc 000000000041fad0 /data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk (offset 12df000) (com.mytech.base.network.OkGoUtil.lambda$init$0)
native: #29 pc 000000000067fcfc /apex/com.android.art/lib64/libart.so (MterpInvokeStatic+1224)
native: #30 pc 000000000012d994 /apex/com.android.art/lib64/libart.so (mterp_op_invoke_static+20)
native: #31 pc 000000000041ebb0 /data/app/~~1aZnFtFZFR_EJNSf9lgSYg==/com.my.app-OYf-Qz8LiB3dMrOpAlVkPg==/base.apk (offset 12df000) (com.mytech.base.network.OkGoUtil$$ExternalSyntheticLambda0.run+4)
native: #32 pc 0000000000306200 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.llvm.6432830707213048161)+268)
native: #33 pc 000000000066b808 /apex/com.android.art/lib64/libart.so (artQuickToInterpreterBridge+780)
native: #34 pc 000000000013cff8 /apex/com.android.art/lib64/libart.so (art_quick_to_interpreter_bridge+88)
native: #35 pc 00000000021e0664 /memfd:jit-cache (deleted) (offset 2000000) (java.util.concurrent.Executors$RunnableAdapter.call+68)
native: #36 pc 000000000227acec /memfd:jit-cache (deleted) (offset 2000000) (java.util.concurrent.FutureTask.runAndReset+204)
native: #37 pc 00000000022d4918 /memfd:jit-cache (deleted) (offset 2000000) (java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run+168)
native: #38 pc 0000000000133564 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+548)
native: #39 pc 00000000001a8a78 /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+200)
native: #40 pc 00000000003188d8 /apex/com.android.art/lib64/libart.so (art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)+376)
native: #41 pc 000000000030ec04 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false, false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+996)
native: #42 pc 000000000067e4d0 /apex/com.android.art/lib64/libart.so (MterpInvokeInterface+1032)
native: #43 pc 000000000012da14 /apex/com.android.art/lib64/libart.so (mterp_op_invoke_interface+20)
native: #44 pc 00000000001f9e6e /apex/com.android.art/javalib/core-oj.jar (java.util.concurrent.ThreadPoolExecutor.runWorker+158)
native: #45 pc 000000000067cda0 /apex/com.android.art/lib64/libart.so (MterpInvokeVirtual+1520)
native: #46 pc 000000000012d814 /apex/com.android.art/lib64/libart.so (mterp_op_invoke_virtual+20)
native: #47 pc 00000000001f8c30 /apex/com.android.art/javalib/core-oj.jar (java.util.concurrent.ThreadPoolExecutor$Worker.run+4)
native: #48 pc 000000000067e7d8 /apex/com.android.art/lib64/libart.so (MterpInvokeInterface+1808)
native: #49 pc 000000000012da14 /apex/com.android.art/lib64/libart.so (mterp_op_invoke_interface+20)
native: #50 pc 00000000000eb7d0 /apex/com.android.art/javalib/core-oj.jar (java.lang.Thread.run+8)
native: #51 pc 0000000000306200 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.llvm.6432830707213048161)+268)
native: #52 pc 000000000066b808 /apex/com.android.art/lib64/libart.so (artQuickToInterpreterBridge+780)
native: #53 pc 000000000013cff8 /apex/com.android.art/lib64/libart.so (art_quick_to_interpreter_bridge+88)
native: #54 pc 0000000000133564 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+548)
native: #55 pc 00000000001a8a78 /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+200)
native: #56 pc 0000000000555278 /apex/com.android.art/lib64/libart.so (art::JValue art::InvokeVirtualOrInterfaceWithJValues<art::ArtMethod*>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, art::ArtMethod*, jvalue const*)+460)
native: #57 pc 00000000005a4614 /apex/com.android.art/lib64/libart.so (art::Thread::CreateCallback(void*)+1308)
native: #58 pc 00000000000afecc /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)
native: #59 pc 0000000000050408 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
at com.iwall.cybersdk.NativeLib.applyCertificate(Native method)
at com.iwall.cybersdk.CyberSDK.applyCertificate(CyberSDK.java:417)
at com.iwall.cybersdk.CyberSDK.applyCertificate(CyberSDK.java:436)
at com.mytech.base.network.OkGoUtil.initCertificate(OkGoUtil.java:501)
- locked <0x01b46398> (a java.lang.Class<com.mytech.base.network.OkGoUtil>)
at com.mytech.base.network.OkGoUtil.initPki(OkGoUtil.java:356)
at com.mytech.base.network.OkGoUtil.lambda$init$0(OkGoUtil.java:301)
at com.mytech.base.network.OkGoUtil$$ExternalSyntheticLambda0.run(D8$$SyntheticClass:-1)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:462)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:307)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:302)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
"MAPS_APPTrackerThread - threadstate" prio=5 tid=24 Sleeping
| group="main" sCount=1 dsCount=0 flags=1 obj=0x13a82d20 self=0xb400007ace41ead0
| sysTid=32642 nice=0 cgrp=foreground sched=0/0 handle=0x78eba97cc0
| state=S schedstat=( 518440443 74655252 877 ) utm=47 stm=4 core=1 HZ=100
| stack=0x78eb994000-0x78eb996000 stackSize=1043KB
| held mutexes=
at java.lang.Thread.sleep(Native method)
- sleeping on <0x0fb6e7f1> (a java.lang.Object)
at java.lang.Thread.sleep(Thread.java:442)
- locked <0x0fb6e7f1> (a java.lang.Object)
at java.lang.Thread.sleep(Thread.java:358)
at com.huawei.maps.app.common.utils.task.trace.AbsTracker.sleep(SourceFile:1)
at com.huawei.maps.app.common.utils.task.trace.ThreadStateTracker.execute(SourceFile:28)
at com.huawei.maps.app.common.utils.task.trace.AbsTracker.run(SourceFile:2)
at java.lang.Thread.run(Thread.java:923)
"MAPS_APPTrackerThread - threadPool" prio=5 tid=26 Sleeping
| group="main" sCount=1 dsCount=0 flags=1 obj=0x13a83058 self=0xb400007ace4143f0
| sysTid=32643 nice=0 cgrp=foreground sched=0/0 handle=0x78eb98dcc0
| state=S schedstat=( 532332501 122715411 803 ) utm=47 stm=5 core=7 HZ=100
| stack=0x78eb88a000-0x78eb88c000 stackSize=1043KB
| held mutexes=
at java.lang.Thread.sleep(Native method)
- sleeping on <0x00f25fd6> (a java.lang.Object)
at java.lang.Thread.sleep(Thread.java:442)
- locked <0x00f25fd6> (a java.lang.Object)
at java.lang.Thread.sleep(Thread.java:358)
at com.huawei.maps.app.common.utils.task.trace.AbsTracker.sleep(SourceFile:1)
at com.huawei.maps.app.common.utils.task.trace.ThreadPoolStateTracker.execute(SourceFile:8)
at com.huawei.maps.app.common.utils.task.trace.AbsTracker.run(SourceFile:2)
at java.lang.Thread.run(Thread.java:923)
"MAPS_APP_LOG_1_LogM_i_38581" prio=5 tid=27 Waiting
| group="main" sCount=1 dsCount=0 flags=1 obj=0x13a83230 self=0xb400007ace4291b0
| sysTid=32644 nice=0 cgrp=foreground sched=0/0 handle=0x78eb883cc0
| state=S schedstat=( 15920540171 4220751211 30772 ) utm=1162 stm=429 core=3 HZ=100
| stack=0x78eb780000-0x78eb782000 stackSize=1043KB
| held mutexes=
at sun.misc.Unsafe.park(Native method)
- waiting on an unknown object
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:190)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2067)
at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
"AutoLogPrinter" prio=5 tid=28 TimedWaiting
| group="main" sCount=1 dsCount=0 flags=1 obj=0x13cfd698 self=0xb400007ace41b330
| sysTid=32659 nice=0 cgrp=foreground sched=0/0 handle=0x78eb779cc0
| state=S schedstat=( 16033323163 3956356442 31274 ) utm=1065 stm=537 core=3 HZ=100
| stack=0x78eb676000-0x78eb678000 stackSize=1043KB
| held mutexes=
at sun.misc.Unsafe.park(Native method)
- waiting on an unknown object
at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:230)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2109)
at java.util.concurrent.ArrayBlockingQueue.poll(ArrayBlockingQueue.java:402)
at com.huawei.maps.app.common.utils.applog.new$if.run(SourceFile:28)
"FilePrinter.DEBUG_LOGS43383678" prio=5 tid=30 Native
| group="main" sCount=1 dsCount=0 flags=1 obj=0x14f01ed8 self=0xb400007ace438c00
| sysTid=32703 nice=0 cgrp=foreground sched=0/0 handle=0x78eb565cc0
| state=S schedstat=( 77547232 48707814 239 ) utm=4 stm=3 core=7 HZ=100
| stack=0x78eb462000-0x78eb464000 stackSize=1043KB
| held mutexes=
native: #00 pc 000000000009c0b8 /apex/com.android.runtime/lib64/bionic/libc.so (__epoll_pwait+8)
native: #01 pc 0000000000019ad0 /system/lib64/libutils.so (android::Looper::pollInner(int)+184)
native: #02 pc 00000000000199b0 /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+112)
native: #03 pc 0000000000110f80 /system/lib64/libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long, int)+44)
at android.os.MessageQueue.nativePollOnce(Native method)
at android.os.MessageQueue.next(MessageQueue.java:335)
at android.os.Looper.loop(Looper.java:183)
at android.os.HandlerThread.run(HandlerThread.java:67)
"Location-Full-LocationTracker" prio=5 tid=31 Native
| group="main" sCount=1 dsCount=0 flags=1 obj=0x14f01ff8 self=0xb400007ace431cc0
| sysTid=32727 nice=0 cgrp=foreground sched=0/0 handle=0x78eb45bcc0
| state=S schedstat=( 215898858 291158684 334 ) utm=18 stm=3 core=3 HZ=100
| stack=0x78eb358000-0x78eb35a000 stackSize=1043KB
| held mutexes=
native: #00 pc 000000000009c0b8 /apex/com.android.runtime/lib64/bionic/libc.so (__epoll_pwait+8)
native: #01 pc 0000000000019ad0 /system/lib64/libutils.so (android::Looper::pollInner(int)+184)
native: #02 pc 00000000000199b0 /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+112)
native: #03 pc 0000000000110f80 /system/lib64/libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long, int)+44)
at android.os.MessageQueue.nativePollOnce(Native method)
at android.os.MessageQueue.next(MessageQueue.java:335)
at android.os.Looper.loop(Looper.java:183)
at android.os.HandlerThread.run(HandlerThread.java:67)
"LogWriteThread" prio=5 tid=32 TimedWaiting
| group="main" sCount=1 dsCount=0 flags=1 obj=0x14f02ce8 self=0xb400007ace42ad80
| sysTid=32736 nice=0 cgrp=foreground sched=0/0 handle=0x78eb351cc0
| state=S schedstat=( 63417334072 16009275053 111741 ) utm=4659 stm=1682 core=3 HZ=100
| stack=0x78eb24e000-0x78eb250000 stackSize=1043KB
| held mutexes=
at sun.misc.Unsafe.park(Native method)
- waiting on an unknown object
at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:230)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2109)
at java.util.concurrent.ArrayBlockingQueue.poll(ArrayBlockingQueue.java:402)
at com.huawei.location.lite.common.log.logwrite.LogWriteManager.write(SourceFile:-1)
at com.huawei.location.lite.common.log.logwrite.LogWriteManager.access$800(SourceFile:-1)
at com.huawei.location.lite.common.log.logwrite.LogWriteManager$WriteWorker.run(SourceFile:-1)
"MAPS_APP_MAIN_PAGE_2_MapInitManager_initManager_5" prio=5 tid=36 Waiting
| group="main" sCount=1 dsCount=0 flags=1 obj=0x14f0b628 self=0xb400007ace437030
| sysTid=32745 nice=0 cgrp=foreground sched=0/0 handle=0x78de771cc0
| state=S schedstat=( 218987286 184173024 220 ) utm=19 stm=2 core=0 HZ=100
| stack=0x78de66e000-0x78de670000 stackSize=1043KB
| held mutexes=
at sun.misc.Unsafe.park(Native method)
- waiting on an unknown object
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:190)
at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:459)
at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
at java.util.concurrent.SynchronousQueue.take(SynchronousQueue.java:920)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
"MAPS_APP_MAIN_PAGE_2_MapInitManager_initManager_4" prio=5 tid=38 Waiting
| group="main" sCount=1 dsCount=0 flags=1 obj=0x14f035a0 self=0xb400007ace435460
| sysTid=32746 nice=0 cgrp=foreground sched=0/0 handle=0x78de667cc0
| state=S schedstat=( 150932140 129561722 214 ) utm=13 stm=1 core=0 HZ=100
| stack=0x78de564000-0x78de566000 stackSize=1043KB
| held mutexes=
at sun.misc.Unsafe.park(Native method)
- waiting on an unknown object
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:190)
at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:459)
at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
at java.util.concurrent.SynchronousQueue.take(SynchronousQueue.java:920)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
"FilePrinter.CORE173199851" prio=5 tid=29 Native
| group="main" sCount=1 dsCount=0 flags=1 obj=0x14f03668 self=0xb400007ace42e520
| sysTid=32748 nice=0 cgrp=foreground sched=0/0 handle=0x78eb66fcc0
| state=S schedstat=( 252083 3647448 3 ) utm=0 stm=0 core=1 HZ=100
| stack=0x78eb56c000-0x78eb56e000 stackSize=1043KB
| held mutexes=
native: #00 pc 000000000009c0b8 /apex/com.android.runtime/lib64/bionic/libc.so (__epoll_pwait+8)
native: #01 pc 0000000000019ad0 /system/lib64/libutils.so (android::Looper::pollInner(int)+184)
native: #02 pc 00000000000199b0 /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+112)
native: #03 pc 0000000000110f80 /system/lib64/libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long, int)+44)
at android.os.MessageQueue.nativePollOnce(Native method)
at android.os.MessageQueue.next(MessageQueue.java:335)
at android.os.Looper.loop(Looper.java:183)
at android.os.HandlerThread.run(HandlerThread.java:67)
"queued-work-looper" prio=5 tid=39 Native
| group="main" sCount=1 dsCount=0 flags=1 obj=0x14f04288 self=0xb400007ace43a7d0
| sysTid=32755 nice=-2 cgrp=foreground sched=0/0 handle=0x78e5c7ccc0
| state=S schedstat=( 1661209650 530692469 3870 ) utm=77 stm=88 core=3 HZ=100
| stack=0x78e5b79000-0x78e5b7b000 stackSize=1043KB
| held mutexes=
native: #00 pc 000000000009c0b8 /apex/com.android.runtime/lib64/bionic/libc.so (__epoll_pwait+8)
native: #01 pc 0000000000019ad0 /system/lib64/libutils.so (android::Looper::pollInner(int)+184)
native: #02 pc 00000000000199b0 /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+112)
native: #03 pc 0000000000110f80 /system/lib64/libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long, int)+44)
at android.os.MessageQueue.nativePollOnce(Native method)
at android.os.MessageQueue.next(MessageQueue.java:335)
at android.os.Looper.loop(Looper.java:183)
at android.os.HandlerThread.run(HandlerThread.java:67)
"netdiag_thread" prio=5 tid=43 Native
| group="main" sCount=1 dsCount=0 flags=1 obj=0x14f04828 self=0xb400007ace441710
| sysTid=32758 nice=0 cgrp=foreground sched=0/0 handle=0x78e595ecc0
| state=S schedstat=( 5120064742 3806456925 29619 ) utm=324 stm=187 core=0 HZ=100
| stack=0x78e585b000-0x78e585d000 stackSize=1043KB
| held mutexes=
native: #00 pc 000000000009c0b8 /apex/com.android.runtime/lib64/bionic/libc.so (__epoll_pwait+8)
native: #01 pc 0000000000019ad0 /system/lib64/libutils.so (android::Looper::pollInner(int)+184)
native: #02 pc 00000000000199b0 /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+112)
native: #03 pc 0000000000110f80 /system/lib64/libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long, int)+44)
at android.os.MessageQueue.nativePollOnce(Native method)
at android.os.MessageQueue.next(MessageQueue.java:335)
at android.os.Looper.loop(Looper.java:183)
at android.os.HandlerThread.run(HandlerThread.java:67)
"NK_NK_0 ->NK_DNKeeperManager_0" prio=5 tid=46 Waiting
| group="main" sCount=1 dsCount=0 flags=1 obj=0x14f06f58 self=0xb400007ace44d9c0
| sysTid=32763 nice=0 cgrp=foreground sched=0/0 handle=0x78e5536cc0
| state=S schedstat=( 88452562 75736298 104 ) utm=7 stm=1 core=2 HZ=100
| stack=0x78e5433000-0x78e5435000 stackSize=1043KB
| held mutexes=
at sun.misc.Unsafe.park(Native method)
- waiting on an unknown object
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:190)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2067)
at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
"InnerTaskScheduler-0" prio=5 tid=48 Sleeping
| group="main" sCount=1 dsCount=0 flags=1 obj=0x14f07750 self=0xb400007ace451160
| sysTid=320 nice=0 cgrp=foreground sched=0/0 handle=0x78e5322cc0
| state=S schedstat=( 74260852803 50092658560 1043797 ) utm=4932 stm=2493 core=0 HZ=100
| stack=0x78e521f000-0x78e5221000 stackSize=1043KB
| held mutexes=
at java.lang.Thread.sleep(Native method)
- sleeping on <0x05ea3257> (a java.lang.Object)
at java.lang.Thread.sleep(Thread.java:442)
- locked <0x05ea3257> (a java.lang.Object)
at java.util.concurrent.TimeUnit.sleep(TimeUnit.java:391)
at com.huawei.hms.navi.navisdk.vc.innerWait(SourceFile:-1)
at com.huawei.hms.navi.navisdk.vc$a.run(SourceFile:-1)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
"Navi2-Log-1" prio=5 tid=50 Waiting
| group="main" sCount=1 dsCount=0 flags=1 obj=0x14f07a08 self=0xb400007ace448650
| sysTid=321 nice=0 cgrp=foreground sched=0/0 handle=0x78e5218cc0
| state=S schedstat=( 126430251 165991310 1066 ) utm=10 stm=1 core=3 HZ=100
| stack=0x78e5115000-0x78e5117000 stackSize=1043KB
| held mutexes=
at sun.misc.Unsafe.park(Native method)
- waiting on an unknown object
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:190)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2067)
at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
"Core-LogWrite" prio=5 tid=52 Waiting
| group="main" sCount=1 dsCount=0 flags=1 obj=0x14f07ef8 self=0xb400007ace452d30
| sysTid=354 nice=0 cgrp=foreground sched=0/0 handle=0x78e5004cc0
| state=S schedstat=( 838369542 260621934 872 ) utm=65 stm=18 core=6 HZ=100
| stack=0x78e4f01000-0x78e4f03000 stackSize=1043KB
| held mutexes=
at sun.misc.Unsafe.park(Native method)
- waiting on an unknown object
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:190)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2067)
at java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:387)
at com.huawei.hms.navi.navisdk.h$a.run(SourceFile:15)
"MAPS_APP_NAVI_1_MapNaviController_updateUrlDomainName_1" prio=5 tid=53 Waiting
| group="main" sCount=1 dsCount=0 flags=1 obj=0x14f08278 self=0xb400007ace44f590
| sysTid=355 nice=0 cgrp=foreground sched=0/0 handle=0x78e4efacc0
| state=S schedstat=( 15140049 15842293 28 ) utm=1 stm=0 core=1 HZ=100
| stack=0x78e4df7000-0x78e4df9000 stackSize=1043KB
| held mutexes=
at sun.misc.Unsafe.park(Native method)
- waiting on an unknown object
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:190)
at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:459)
at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
at java.util.concurrent.SynchronousQueue.take(SynchronousQueue.java:920)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
"Navi-Thread-Pool-0" prio=5 tid=56 Waiting
| group="main" sCount=1 dsCount=0 flags=1 obj=0x14f00008 self=0xb400007ace459c70
| sysTid=368 nice=10 cgrp=background sched=0/0 handle=0x78c7f27cc0
| state=S schedstat=( 502859208 116911259 390 ) utm=47 stm=2 core=1 HZ=100
| stack=0x78c7e24000-0x78c7e26000 stackSize=1043KB
| held mutexes=
at sun.misc.Unsafe.park(Native method)
- waiting on an unknown object
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:190)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2067)
at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
"RxCachedWorkerPoolEvictor-1" daemon prio=5 tid=55 TimedWaiting
| group="main" sCount=1 dsCount=0 flags=1 obj=0x136d1df8 self=0xb400007ace4564d0
| sysTid=404 nice=0 cgrp=foreground sched=0/0 handle=0x78ca031cc0
| state=S schedstat=( 38673378 12421565 194 ) utm=3 stm=0 core=4 HZ=100
| stack=0x78c9f2e000-0x78c9f30000 stackSize=1043KB
| held mutexes=
at sun.misc.Unsafe.park(Native method)
- waiting on an unknown object
at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:230)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2109)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1132)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:849)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
"pool-18-thread-1" prio=5 tid=57 Waiting
| group="main" sCount=1 dsCount=0 flags=1 obj=0x136d1f68 self=0xb400007ace462780
| sysTid=485 nice=0 cgrp=foreground sched=0/0 handle=0x78c6e1dcc0
| state=S schedstat=( 178295906 185955884 227 ) utm=14 stm=3 core=5 HZ=100
| stack=0x78c6d1a000-0x78c6d1c000 stackSize=1043KB
| held mutexes=
at sun.misc.Unsafe.park(Native method)
- waiting on an unknown object
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:190)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2067)
at java.util.concurrent.PriorityBlockingQueue.take(PriorityBlockingQueue.java:548)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
"Binder:32389_4" prio=5 tid=62 Native
| group="main" sCount=1 dsCount=0 flags=1 obj=0x140424c0 self=0xb400007ace4696c0
| sysTid=498 nice=0 cgrp=foreground sched=0/0 handle=0x78c29f5cc0
| state=S schedstat=( 1686175179 1468252631 6899 ) utm=119 stm=49 core=3 HZ=100
| stack=0x78c28fe000-0x78c2900000 stackSize=995KB
| held mutexes=
native: #00 pc 000000000009b0f4 /apex/com.android.runtime/lib64/bionic/libc.so (__ioctl+4)
native: #01 pc 0000000000057de0 /apex/com.android.runtime/lib64/bionic/libc.so (ioctl+156)
native: #02 pc 0000000000053a1c /system/lib64/libbinder.so (android::IPCThreadState::talkWithDriver(bool)+296)
native: #03 pc 0000000000053c0c /system/lib64/libbinder.so (android::IPCThreadState::getAndExecuteCommand()+24)
native: #04 pc 00000000000544c8 /system/lib64/libbinder.so (android::IPCThreadState::joinThreadPool(bool)+60)
native: #05 pc 000000000007c590 /system/lib64/libbinder.so (android::PoolThread::threadLoop()+24)
native: #06 pc 00000000000154d0 /system/lib64/libutils.so (android::Thread::_threadLoop(void*)+260)
native: #07 pc 00000000000a0be0 /system/lib64/libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*)+144)
native: #08 pc 0000000000014d94 /system/lib64/libutils.so (thread_data_t::trampoline(thread_data_t const*)+412)
native: #09 pc 00000000000afecc /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)
native: #10 pc 0000000000050408 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
(no managed stack frames)
"Okio Watchdog" daemon prio=5 tid=63 Waiting
| group="main" sCount=1 dsCount=0 flags=1 obj=0x14042538 self=0xb400007ace464350
| sysTid=500 nice=0 cgrp=foreground sched=0/0 handle=0x78c0343cc0
| state=S schedstat=( 548541 716459 4 ) utm=0 stm=0 core=7 HZ=100
| stack=0x78c0240000-0x78c0242000 stackSize=1043KB
| held mutexes=
at java.lang.Object.wait(Native method)
- waiting on <0x06582144> (a java.lang.Class<com.android.okhttp.okio.AsyncTimeout>)
at java.lang.Object.wait(Object.java:442)
at java.lang.Object.wait(Object.java:568)
at com.android.okhttp.okio.AsyncTimeout.awaitTimeout(AsyncTimeout.java:313)
- locked <0x06582144> (a java.lang.Class<com.android.okhttp.okio.AsyncTimeout>)
at com.android.okhttp.okio.AsyncTimeout.access$000(AsyncTimeout.java:42)
at com.android.okhttp.okio.AsyncTimeout$Watchdog.run(AsyncTimeout.java:288)
"Binder:32389_5" prio=5 tid=64 Native
| group="main" sCount=1 dsCount=0 flags=1 obj=0x14042600 self=0xb400007ace465f20
| sysTid=499 nice=0 cgrp=foreground sched=0/0 handle=0x78c0461cc0
| state=S schedstat=( 728786189 1019963786 2879 ) utm=55 stm=17 core=5 HZ=100
| stack=0x78c036a000-0x78c036c000 stackSize=995KB
| held mutexes=
native: #00 pc 000000000009b0f4 /apex/com.android.runtime/lib64/bionic/libc.so (__ioctl+4)
native: #01 pc 0000000000057de0 /apex/com.android.runtime/lib64/bionic/libc.so (ioctl+156)
native: #02 pc 0000000000053a1c /system/lib64/libbinder.so (android::IPCThreadState::talkWithDriver(bool)+296)
native: #03 pc 0000000000053c0c /system/lib64/libbinder.so (android::IPCThreadState::getAndExecuteCommand()+24)
native: #04 pc 00000000000544c8 /system/lib64/libbinder.so (android::IPCThreadState::joinThreadPool(bool)+60)
native: #05 pc 000000000007c590 /system/lib64/libbinder.so (android::PoolThread::threadLoop()+24)
native: #06 pc 00000000000154d0 /system/lib64/libutils.so (android::Thread::_threadLoop(void*)+260)
native: #07 pc 00000000000a0be0 /system/lib64/libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*)+144)
native: #08 pc 0000000000014d94 /system/lib64/libutils.so (thread_data_t::trampoline(thread_data_t const*)+412)
native: #09 pc 00000000000afecc /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)
native: #10 pc 0000000000050408 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
(no managed stack frames)
"upload-crash-thread" prio=5 tid=65 Native
| group="main" sCount=1 dsCount=0 flags=1 obj=0x14042678 self=0xb400007ace46ce60
| sysTid=503 nice=0 cgrp=foreground sched=0/0 handle=0x78be1d9cc0
| state=S schedstat=( 3478487 11212656 4 ) utm=0 stm=0 core=6 HZ=100
| stack=0x78be0d6000-0x78be0d8000 stackSize=1043KB
| held mutexes=
native: #00 pc 000000000009c0b8 /apex/com.android.runtime/lib64/bionic/libc.so (__epoll_pwait+8)
native: #01 pc 0000000000019ad0 /system/lib64/libutils.so (android::Looper::pollInner(int)+184)
native: #02 pc 00000000000199b0 /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+112)
native: #03 pc 0000000000110f80 /system/lib64/libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long, int)+44)
at android.os.MessageQueue.nativePollOnce(Native method)
at android.os.MessageQueue.next(MessageQueue.java:335)
at android.os.Looper.loop(Looper.java:183)
at android.os.HandlerThread.run(HandlerThread.java:67)
"VDBus_DISPATCH" prio=5 tid=66 Native
| group="main" sCount=1 dsCount=0 flags=1 obj=0x14042758 self=0xb400007ace46b290
| sysTid=509 nice=0 cgrp=foreground sched=0/0 handle=0x78bd0cfcc0
| state=S schedstat=( 799428 4846614 2 ) utm=0 stm=0 core=6 HZ=100
| stack=0x78bcfcc000-0x78bcfce000 stackSize=1043KB
| held mutexes=
native: #00 pc 000000000009c0b8 /apex/com.android.runtime/lib64/bionic/libc.so (__epoll_pwait+8)
native: #01 pc 0000000000019ad0 /system/lib64/libutils.so (android::Looper::pollInner(int)+184)
native: #02 pc 00000000000199b0 /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+112)
native: #03 pc 0000000000110f80 /system/lib64/libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long, int)+44)
at android.os.MessageQueue.nativePollOnce(Native method)
at android.os.MessageQueue.next(MessageQueue.java:335)
at android.os.Looper.loop(Looper.java:183)
at android.os.HandlerThread.run(HandlerThread.java:67)
"VDBus_DISPATCH" prio=5 tid=67 Native
| group="main" sCount=1 dsCount=0 flags=1 obj=0x14042860 self=0xb400007ace470600
| sysTid=512 nice=0 cgrp=foreground sched=0/0 handle=0x78bbfc5cc0
| state=S schedstat=( 274844 6800521 1 ) utm=0 stm=0 core=3 HZ=100
| stack=0x78bbec2000-0x78bbec4000 stackSize=1043KB
| held mutexes=
native: #00 pc 000000000009c0b8 /apex/com.android.runtime/lib64/bionic/libc.so (__epoll_pwait+8)
native: #01 pc 0000000000019ad0 /system/lib64/libutils.so (android::Looper::pollInner(int)+184)
native: #02 pc 00000000000199b0 /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+112)
native: #03 pc 0000000000110f80 /system/lib64/libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long, int)+44)
at android.os.MessageQueue.nativePollOnce(Native method)
at android.os.MessageQueue.next(MessageQueue.java:335)
at android.os.Looper.loop(Looper.java:183)
at android.os.HandlerThread.run(HandlerThread.java:67)
"VDBus_DISPATCH" prio=5 tid=68 Native
| group="main" sCount=1 dsCount=0 flags=1 obj=0x14042990 self=0xb400007ace4721d0
| sysTid=528 nice=0 cgrp=foreground sched=0/0 handle=0x78bae1bcc0
| state=S schedstat=( 336563 8742395 1 ) utm=0 stm=0 core=3 HZ=100
| stack=0x78bad18000-0x78bad1a000 stackSize=1043KB
| held mutexes=
native: #00 pc 000000000009c0b8 /apex/com.android.runtime/lib64/bionic/libc.so (__epoll_pwait+8)
native: #01 pc 0000000000019ad0 /system/lib64/libutils.so (android::Looper::pollInner(int)+184)
native: #02 pc 00000000000199b0 /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+112)
native: #03 pc 0000000000110f80 /system/lib64/libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long, int)+44)
at android.os.MessageQueue.nativePollOnce(Native method)
at android.os.MessageQueue.next(MessageQueue.java:335)
at android.os.Looper.loop(Looper.java:183)
at android.os.HandlerThread.run(HandlerThread.java:67)
"RenderThread" daemon prio=7 tid=2 Native
| group="main" sCount=1 dsCount=0 flags=1 obj=0x134c2ac0 self=0xb400007ace479110
| sysTid=16933 nice=-10 cgrp=foreground sched=0/0 handle=0x794f4f3cc0
| state=S schedstat=( 29312569583 5134491275 95709 ) utm=1740 stm=1190 core=6 HZ=100
| stack=0x794f3fc000-0x794f3fe000 stackSize=995KB
| held mutexes=
native: #00 pc 000000000009c0b8 /apex/com.android.runtime/lib64/bionic/libc.so (__epoll_pwait+8)
native: #01 pc 0000000000019ad0 /system/lib64/libutils.so (android::Looper::pollInner(int)+184)
native: #02 pc 00000000000199b0 /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+112)
native: #03 pc 000000000020fc6c /system/lib64/libhwui.so (android::uirenderer::ThreadBase::waitForWork()+132)
native: #04 pc 0000000000231210 /system/lib64/libhwui.so (android::uirenderer::renderthread::RenderThread::threadLoop()+80)
native: #05 pc 00000000000154d0 /system/lib64/libutils.so (android::Thread::_threadLoop(void*)+260)
native: #06 pc 0000000000014d94 /system/lib64/libutils.so (thread_data_t::trampoline(thread_data_t const*)+412)
native: #07 pc 00000000000afecc /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)
native: #08 pc 0000000000050408 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
(no managed stack frames)
"MAPS_APP_NET_WORK_1_OnlineActivationManager_netActivate_1" prio=5 tid=3 Waiting
| group="main" sCount=1 dsCount=0 flags=1 obj=0x142c8080 self=0xb400007ace454900
| sysTid=16952 nice=0 cgrp=foreground sched=0/0 handle=0x794bf75cc0
| state=S schedstat=( 41750889 16903380 36 ) utm=3 stm=0 core=0 HZ=100
| stack=0x794be72000-0x794be74000 stackSize=1043KB
| held mutexes=
at sun.misc.Unsafe.park(Native method)
- waiting on an unknown object
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:190)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2067)
at java.util.concurrent.PriorityBlockingQueue.take(PriorityBlockingQueue.java:548)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
"pool-18-thread-3" prio=5 tid=4 Waiting
| group="main" sCount=1 dsCount=0 flags=1 obj=0x142c8148 self=0xb400007ace47e480
| sysTid=16953 nice=0 cgrp=foreground sched=0/0 handle=0x794be6bcc0
| state=S schedstat=( 64430575 32902915 96 ) utm=5 stm=0 core=0 HZ=100
| stack=0x794bd68000-0x794bd6a000 stackSize=1043KB
| held mutexes=
at sun.misc.Unsafe.park(Native method)
- waiting on an unknown object
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:190)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2067)
at java.util.concurrent.PriorityBlockingQueue.take(PriorityBlockingQueue.java:548)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1092)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
"OkHttp ConnectionPool" daemon prio=5 tid=40 TimedWaiting
| group="main" sCount=1 dsCount=0 flags=1 obj=0x142caa70 self=0xb400007ace47c8b0
| sysTid=16961 nice=0 cgrp=foreground sched=0/0 handle=0x78eb247cc0
| state=S schedstat=( 93340371 83868234 984 ) utm=7 stm=2 core=3 HZ=100
| stack=0x78eb144000-0x78eb146000 stackSize=1043KB
| held mutexes=
at java.lang.Object.wait(Native method)
- waiting on <0x0c41122d> (a com.huawei.hms.network.embedded.w8)
at com.huawei.hms.network.embedded.w8.d(:-1)
- locked <0x0c41122d> (a com.huawei.hms.network.embedded.w8)
at com.huawei.hms.network.embedded.w8.$r8$lambda$-Azm-_pX0Pa86ws8ZZ-jJyn2d0U(:-1)
at com.huawei.hms.network.embedded.w8$$ExternalSyntheticLambda0.run(D8$$SyntheticClass:-1)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
"pool-36-thread-127 ->NK_NetworkKit_Netdiag_1" prio=5 tid=45 TimedWaiting
| group="main" sCount=1 dsCount=0 flags=1 obj=0x142cadb0 self=0xb400007ace444eb0
| sysTid=16970 nice=0 cgrp=foreground sched=0/0 handle=0x78e574acc0
| state=S schedstat=( 616333774 1029186664 4621 ) utm=44 stm=17 core=3 HZ=100
| stack=0x78e5647000-0x78e5649000 stackSize=1043KB
| held mutexes=
at sun.misc.Unsafe.park(Native method)
- waiting on an unknown object
at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:230)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2109)
at java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1091)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
[[TRUNCATED]]
一、ANR 核心现象定位
从日志可知,本次 ANR 为输入分发超时(Input dispatching timed out) ,是 Android ANR 中最常见的类型,核心特征如下:
- 触发场景:前台应用
com.my.app(进程 PID:32389)的MyGnssActivity(GNSS 定位相关页面)在处理触摸事件(MotionEvent: DOWN)时,等待 5001ms 仍未响应,超过 Android 主线程 5 秒无响应的 ANR 阈值。 - 系统环境:Android 11(RQ3A.210805.001.A1),硬件平台为 DesaySV/g7ph_t22_int。
二、ANR 根本原因分析
结合 CPU、线程、锁竞争、GC 等日志信息,ANR 主要由 「锁竞争阻塞主线程」「CPU 资源耗尽」「线程调度过载」 三大核心问题叠加导致,具体拆解如下:
1. 主线程消息队列(MessageQueue)锁竞争 ——ANR 直接诱因
日志中线程锁竞争是导致主线程无法处理输入事件的直接原因,关键证据如下:
-
持有锁的线程:
Timer-2(tid=72,Runnable 状态)在VehicleRoomManager.java:252中调用Handler.sendEmptyMessage(),触发MessageQueue.enqueueMessage(),并持有MessageQueue锁(<0x0ee99ab9>)。 -
阻塞的线程:
SteeringWheelThread(tid=70,Blocked 状态):等待MessageQueue锁,无法执行Looper.loop(),影响方向盘相关事件传递;Timer-3(tid=73,Blocked 状态):同样等待MessageQueue锁,无法完成定时任务的消息入队;- 主线程间接阻塞:
MessageQueue的enqueueMessage()和next()(主线程取消息)均通过同一把锁保证线程安全,若Timer-2持有锁时操作耗时(如消息入队逻辑复杂),主线程会卡在next()获取锁,无法处理输入事件(触摸、按键等),直接触发 ANR。
2. 应用 CPU 使用率过高 —— 主线程时间片被抢占
日志中com.my.app的 CPU 使用率高达176% (121% 用户态 + 55% 内核态),远超单核心 100% 的上限,导致主线程无法获取足够 CPU 时间片,证据如下:
- 用户态高占用:推测是
MyGnssActivity的 GNSS 数据处理(如定位坐标计算、地图渲染)在主线程执行,或后台线程(如pool-6-thread-1的证书处理)占用大量计算资源; - 内核态高占用:存在频繁的内核态操作,如
FilePrinter系列线程(FilePrinter.imu_acc59755849等)调用java.io.File.length()进行同步文件 IO,触发频繁的系统调用(libcore.io.Linux.stat),占用内核 CPU; - 系统级 CPU 压力:
system_server(99%)、logd(40%)等系统进程也占用大量 CPU,进一步挤压应用主线程的资源。
3. 线程数量过载 —— 调度开销吞噬系统资源
应用共创建139 个线程,远超 Android 应用合理线程数(通常建议 < 50),导致:
- 线程调度开销剧增:系统需要频繁切换线程上下文,每个线程的 CPU 时间片被压缩,主线程被抢占概率大幅提升;
- 无效线程占用资源:大量
Navi-Thread-Pool线程(如Navi-Thread-Pool-0至24)处于 Waiting 状态,但仍占用内存和调度资源;FilePrinter系列线程(如 imu、gyro、wheel_angle)频繁进行文件 IO,进一步消耗 IO 和 CPU。
4. 非关键因素(但加剧问题)
- GC 影响:累计 GC 时间 43.818s,Minor GC 966 次、Major GC 124 次,虽无频繁 Full GC,但频繁 Minor GC 会导致线程短暂暂停(累计暂停 203.5ms),加剧主线程响应延迟;
- Native 层耗时:
libmap.so(地图渲染)、libscm.so(证书处理)等 Native 库存在耗时操作(如std::__ndk1::this_thread::sleep_for),占用 CPU 且无法被 Java 层监控。
三、针对性解决方案
1. 解决 MessageQueue 锁竞争 —— 解除主线程阻塞(优先级最高)
问题代码定位
VehicleRoomManager.java中使用java.util.Timer(Timer-2、Timer-3)直接通过主线程Handler发送消息,导致MessageQueue锁竞争。Timer的run()方法在非主线程执行,若频繁调用Handler.sendMessage(),会持续竞争MessageQueue锁。
优化方案
-
替换 Timer 为 ScheduledThreadPoolExecutor:用后台线程池执行定时任务,避免直接操作主线程
Handler。示例代码:// 原问题代码(Timer+主线程Handler) Timer timer = new Timer(); timer.schedule(new TimerTask() { @Override public void run() { mainHandler.sendEmptyMessage(MSG_UPDATE_VEHICLE_DATA); // 竞争MessageQueue锁 } }, 0, 1000); // 优化后(后台线程池+弱引用避免内存泄漏) ScheduledExecutorService executor = Executors.newSingleThreadScheduledExecutor(); executor.scheduleAtFixedRate(() -> { // 1. 后台执行耗时计算(如车辆数据更新) VehicleData data = fetchVehicleData(); // 2. 若需更新UI,用Handler.post(),减少锁竞争(仅UI更新时入队) mainHandler.post(() -> updateUI(data)); }, 0, 1000, TimeUnit.MILLISECONDS); -
合并消息发送:若定时任务需频繁更新 UI,采用 “批量合并” 策略(如每 500ms 合并一次消息),减少
enqueueMessage()调用次数。
2. 降低 CPU 使用率 —— 释放主线程资源
(1)主线程耗时操作移至后台
- GNSS 数据处理优化:
MyGnssActivity中 GNSS 定位数据(经纬度、海拔)的解析、计算(如坐标转换)需移至后台线程(如Coroutine或WorkManager),仅将最终结果通过Handler更新 UI; - 地图渲染优化:若使用
libmap.so进行地图渲染,确保渲染操作在RenderThread(日志中RenderThreadtid=2,优先级 - 10)执行,避免主线程参与绘制计算。
(2)优化文件 IO 操作
FilePrinter系列线程频繁调用File.length()导致内核态 CPU 高,优化方案:
- 异步 IO 替代同步 IO:用
java.nio.file的异步 API(如AsynchronousFileChannel)读取文件长度,避免阻塞线程; - 批量 IO 与缓存:若需监控多个文件(imu、gyro、wheel_angle),批量读取文件属性并缓存结果(如缓存 100ms 内的文件长度),减少系统调用次数。
(3)Native 库耗时排查
- 跟踪 Native 层耗时:用
perfetto录制轨迹,定位libmap.so、libscm.so的耗时函数(如IW_ApplyCertificate),优化 Native 层循环或睡眠逻辑(如减少nanosleep调用频率); - Native 线程优先级调整:若 Native 线程(如
Thread-41967)优先级过高(nice=-10),降低其优先级(如setpriority(PRIO_PROCESS, 0, 5)),避免抢占主线程。
3. 减少线程数量 —— 降低调度开销
(1)合并重复线程池
日志中Navi-Thread-Pool(24 个)、pool-18-thread(10 个)等线程池重复创建,需统一管理:
- 创建全局线程池:按业务类型划分线程池(如 “导航线程池”“IO 线程池”“计算线程池”),核心线程数根据 CPU 核心数设置(如 CPU 核心数 = 8,核心线程数 = 4);
- 销毁闲置线程池:无需长期运行的线程池(如临时证书验证),任务完成后调用
shutdown(),避免线程泄漏。
(2)清理无用线程
- FilePrinter 线程优化:若多个
FilePrinter线程监控同类文件(如 imu 相关),合并为单个线程批量处理,减少线程数量; - 移除冗余定时线程:检查
Timer-1、Timer-4等定时线程,若任务可合并(如车辆数据更新、GNSS 状态检查),用单个线程池调度,避免重复创建。
4. 优化 GC 与内存 —— 减少线程暂停
- 减少临时对象创建:在 GNSS 数据处理、文件 IO 等高频场景,复用对象(如
VehicleData、ByteBuffer),避免频繁 Minor GC; - 调整堆内存参数:若应用频繁 GC,可在
AndroidManifest.xml中调整堆内存大小(如android:largeHeap="true"),但需避免滥用(可能导致系统内存不足); - 监控 GC 状态:用
Android Studio Profiler的 “Memory” 面板跟踪 GC 频率,若 Minor GC 间隔 < 100ms,需排查内存泄漏或对象创建过快问题。
5. 监控与预防 —— 避免 ANR 复发
- 接入 ANR 监控工具:集成
BlockCanary(定位主线程阻塞)、Matrix(字节跳动性能监控),实时捕获主线程耗时操作(如 > 200ms 的消息处理); - 系统资源监控:在应用中添加 CPU、内存、IO 使用率监控,当 CPU 使用率 > 80% 或线程数 > 80 时,触发 “降频策略”(如暂停非关键定时任务、减少地图渲染帧率);
- 灰度发布与压测:优化后在车载设备上进行压测(如连续 1 小时 GNSS 定位 + 方向盘操作),验证 ANR 是否复现。
四、验证与效果评估
优化后需通过以下指标验证效果:
- ANR 率:监控应用 ANR 率降至 0.1% 以下;
- CPU 使用率:应用 CPU 使用率稳定在 50% 以内(用户态 < 30%,内核态 < 20%);
- 线程数量:线程总数控制在 50 以内;
- 主线程响应时间:主线程消息处理耗时 < 100ms(通过
Handler.postDelayed()测量)。
通过以上优化,可彻底解决本次 ANR 的核心问题(锁竞争 + CPU 过载),同时提升应用整体响应性和稳定性,适配车载场景的高可靠性要求。