1.一般要查看进程当前堆栈
kill -3 [pid] //trace生成到/data/anr/trace.txt
2.当进程已经死锁时;发送kill -3进程无法收到,kill -11或-9由系统直接干掉进程、会破坏现场
debugged -b [pid]
不是自旋锁(忙等锁),所以、CPU占用率不高。
3.ddms对java堆栈的打印
ddms使用
4.抓取log
ps -t [pid]
logcat -v thread
5.进程垮掉以后生成的tomstones
/data/tomstones/
6.Linux内核级死机堆栈
/var/core_dump
7.dumpsys
dumpsys window
dumpsys input
dumpsys activity activities
8.vim使用
sed -ne '/\( 2428\)/p' 20160202.log > cyber.log
9.打印java堆栈
Exception e = new Exception("this is a log");
e.printStackTrace();