下面是最近在解一个monkey测试过程中系统重启的bug的分析过程,从这里我们可以看一下对于watchdog杀死死锁进程的一般分析流程。(这里当是一个笔记,没有详细按着文章的逻辑来整理词汇和语句 汗汗汗)
1. watchdog: Blocked in handler on ActivityManager (ActivityManager)
说明ActivityManager这个线程被blocked了(ActivityManager是system_server的一个线程)
2. 查看ActivityManager线程的堆栈状态:
"ActivityManager" prio=5 tid=15 Blocked
at com.android.server.am.ActivityManagerService$MainHandler.handleMessage(ActivityManagerService.java:1784)
- waiting to lock <0x1a4c832a> (a com.android.server.am.ActivityManagerService) held by thread 61
该线程在等待锁<0x1a4c832a>,这个锁被thread 61所持有