1.通过top -c
命令查看那个进程CPU使用有异常,得到异常进程的pid
2.根据ps -mp <pid> -o THREAD,tid,time | sort -k2r
查看进程中哪个线程CPU使用异常,得到tid
3.因为jstack的栈信息的tid是十六进制的,所以要将tid转化为十六进制printf "%x \n" <tid>
4.通过jstack,查看异常堆栈信息jstack -l <pid> | grep <thread-hex-id> -A 10
4.通过jstack,查看异常堆栈信息jstack -l 1.通过
提升您的技术认知Java 堆栈问题排查流程
top -c
命令查看那个进程CPU使用有异常,得到异常进程的pid
2.根据ps -mp <pid> -o THREAD,tid,time | sort -k2r
查看进程中哪个线程CPU使用异常,得到tid
3.因为jstack的栈信息的tid是十六进制的,所以要将tid转化为十六进制printf "%x \n" <tid>
4.通过jstack,查看异常堆栈信息jstack -l <pid> | grep <thread-hex-id> -A 10