查看JAVA进程中哪个线程CPU消耗最高

一,在centos linux 上查看进程占用cpu过高

top 
shift+h
查看哪个进程程消耗最高
 
 

二,查看JAVA进程中哪个线程消耗最高

 
2.1 导出java运行的线程信息
 
jstack 进程id(jps查看)
jstack 进程id > ps.txt
jstack -l 进程id (窗口打印)
 
 
//另外还有一种方式
 
如果启动方式如下:
nohup java -classpath conf/:my.jar  com.tank.manClass>./log.out 2>&1 &
 
则执行: kill -3 PID,进程信息会输出到/log.out 
 
 
 
 
2.2 查找最消耗cpu的java线程
 
jps
找到java进程PID
命令:ps -mp pid -o THREAD,tid,time   或者  ps -Lfp pid
 
通过%CPU和 TIME,判断占用的线程TID
 
找到TID,转换成16进制,然后在上面(jstack 进程id > ps.txt)导出的文件中搜索,就可以定位到具体的线程,类。
 
posted @   itank  阅读(21393)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
历史上的今天:
2010-10-21 教你做android 上的google map 地图
点击右上角即可分享
微信分享提示