标签归档:进程

Android获得当前时刻每个线程的调用栈

有时候app出现异常,但是没有发生anr,比如某个重要工作线程hang住了此时怎么快速定位呢

大家都知道anr的时候会生成trace文件,如何在不发生anr的时候也生成trace文件呢

答案很简单可以通过adb shell kill -3 +pid

执行后可以看到打印了

I/art: Wrote stack traces to ‘/data/anr/traces.txt’

值得注意的是 虽然执行的是kill 命令

但是kill -3并不会导致 进程挂掉,而是仅仅打印调用栈

在有事故现场的情况下 非常好用!!

更多内容请查看大佬博客

http://gityuan.com/2017/07/09/android_debug/