linux 下查看java程序 cpu使用率最高的线程


思路:

1. 找到对应的java程序的进程(ps 或者 top 或者 jps (root 权限)) 比如pid是20830

2. 根据ps的查看线程相关的参数找出对应进程中使用cpu最多的线程

3.用jstack命令打印出所有的java线程 

4. 根据第2步中找到的线程id转换成16进制后到jstack打印的消息中找对应的线程

5. 根据java对应线程对应的stackTrace 来处理问题

ps相关命令

ps -p 20830 -mfL | sort -rk 5 | head -n 3 | tail -n 1 | awk '{print $4}' | xargs printf '%x\n'
jstack 相关命令

/opt/jdk/jdk1.8.0_221/bin/jstack 20830


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM