本文主要是介绍java 中获取本地线程堆栈信息(即 利用java 命令模拟jstack),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
java虚拟机中获取线程堆栈的信息,可以通过jstck命令:
/*** 通过java代码 使用jstack查看线程堆栈信息* created by jintian chen* 2018/04/21*/
@Slf4j
public abstract class JstackUtil {/*** 获取线程快照信息** @return*/public static String getJavaStackTrace() {StringBuffer msg = new StringBuffer();for (Map.Entry<Thread, StackTraceElement[]> stackTrace : Thread.getAllStackTraces().entrySet()) {Thread thread = (Thread) stackTrace.getKey();StackTraceElement[] stack = (StackTraceElement[]) stackTrace.getValue();if (thread.equals(Thread.currentThread())) {continue;}msg.append("\n 线程:").append(thread.getName()).append("\n");for (StackTraceElement element : stack) {msg.append("\t").append(eleme
这篇关于java 中获取本地线程堆栈信息(即 利用java 命令模拟jstack)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!