线程诊断笔记

CPU占用过高

1、top命令查看占用CPU较高的进程
2、通过进程ID获取当前进程下线程的CPU占用情况
打印进程ID,线程ID,以及占用CPU

ps H -eo pid,tid,%cpu

查询指定进程的线程CPU占用情况

3、通过jstack命令查询线程占用情况

jstack 【pid】

4、十进制线程ID转换成十六进制并确定占用CPU较高的线程
十进制换算成十六进制

jstack找到出问题的线程

二、程序长时间无响应

通过jstack 命令查看
死锁

通过结果可以看出是两个线程发现了死锁,下面也包含两个线程的详细信息,以及发生死锁的代码位置。

欢迎大家留言,以便于后面的人更快解决问题!另外亦欢迎大家可以关注我的微信公众号,方便利用零碎时间互相交流。共勉!

posted @ 2023-07-29 17:19  灵台悠步  阅读(9)  评论(0编辑  收藏  举报