多线程01-实战

175 阅读1分钟

Java 程序员面试时,关于多线程的问题是避免不了的,今天我们学习两个与多线程相关的实战问题。请听题:

1.如何获取线程 dump

什么图形工具啥的,这里不说,直接上服务器。
第一步,获取 Java 进程 PID:

jps

image.png
1970 是我们的要找的 PID
第二步,获取堆栈信息:

jstack 1970 >stack.txt

jstack.png
第三步,查看堆栈信息:

cat stack.txt

cat.png

2.如何找到消耗 CPU 最高的线程

第一步,获取 Java 进程 PID:

jps

第二步,查看线程占用 CPU 时间百分比:

# 在 linux 下使用,mac 不好使
top -H -p pid

image.png