【笔记】Java程序线程运行诊断

前言

在Linux上进行Java程序的线程运行诊断

查看进程运行状况

1
top

查看进程的所有线程

  • 通过进程id查看对应的所有线程

-eo:只查看指定字段的数据
<pid>:指定进程id

1
ps H -eo pid,tid,%cpu | grep <pid>

查看线程运行状态

  • 通过JDK工具,查看线程的运行状态,从而定位代码位置

<pid>:指定进程id

1
jstack <pid>
  • 通过上一步得到的线程id(十进制),转换为十六进制数,就可以快速定位产生问题的线程所在的代码行数

完成

参考文献

哔哩哔哩——黑马程序员