Android打印当前运行中的所有线程信息
在APP运行过程中,用什么方式可以获取当前进行运行的所有线程信息呢?
直接上代码:
private final String TAG = "budaye";
public void printAllThreadInfo() {
Map<Thread, StackTraceElement[]> allStackTraces = Thread.getAllStackTraces();
Log.d(TAG, "线程总数 = " + allStackTraces.size());
for (Map.Entry<Thread, StackTraceElement[]> stackTrace : allStackTraces.entrySet()) {
Thread thread = stackTrace.getKey();
Log.d(TAG, "线程:" + thread.getName() + ", id=" + thread.getId() + ", state=" + thread.getState());
StackTraceElement[] stack = stackTrace.getValue();
String strStackTrace = "堆栈:";
for (StackTraceElement stackTraceElement : stack) {
strStackTrace += stackTraceElement.toString() + "\n";
}
Log.d(TAG, strStackTrace);
}
}
————————————————
版权声明:本文为CSDN博主「卜大爷」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u011578734/article/details/127329878