博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
如何定位cpu占用率高的java线程
阅读量:6868 次
发布时间:2019-06-26

本文共 664 字,大约阅读时间需要 2 分钟。

如何定位cpu占用率高的java线程

工具:

1

jstack:jstack用于打印出给定的java进程ID或core file或远程调试服务的Java堆栈信息,如果是在64位机器上,需要指定选项"-J-d64",Windows的jstack使用方式只支持以下的这种方式。

pidstat :pidstat主要用于监控全部或指定进程占用系统资源的情况,如CPU,内存、设备IO、任务切换、线程等。pidstat首次运行时显示自系统启动开始的各项统计信息,之后运行pidstat将显示自上次运行该命令以后的统计信息。用户可以通过指定统计的次数和时间来获得所需的统计信息。

top:或者jps找到java进程PID,或者 或者  ps -Lfp pid

通过%CPU和 TIME,判断占用的线程TID

 找到TID,转换成16进制,然后在上面(jstack 进程id > ps.txt)导出的文件中搜索,就可以定位到具体的线程,类。 

2、或者:

jstack -l pid > /home/1.tdump

再通过看线程 :pidstat -p  pid(java进程ID) -u -d -t -w -h 1 1000 

 找到TID,转换成16进制,然后在上面(jstack 进程id > 1.tdump)导出的文件中搜索,就可以定位到具体的线程,类。

3、可以下载1.tdump到本地查找

本文转自 知止内明 51CTO博客,原文链接:http://blog.51cto.com/357712148/1963585,如需转载请自行联系原作者
你可能感兴趣的文章
使用NSOperation和NSURLSession封装一个串行下载器
查看>>
网络学习笔记(二):TCP可靠传输原理
查看>>
Swift 笔记1
查看>>
GitHub远程仓库上传文件
查看>>
windows/mac安装git及初级使用超详细图解教程
查看>>
javascript keyCode相同如何进一步区分
查看>>
Vue基础 - 组件
查看>>
一个漂亮的Vue组件 Floating Action Button
查看>>
Ionic4 入坑之谈
查看>>
[Git] Fork
查看>>
获取本机电脑IP的正确使用方法
查看>>
每天一道编程题(Javascript)
查看>>
0_jfoenix_介绍,环境搭建,jfxbutton
查看>>
vue路由配置以及使用步骤
查看>>
iOS逆向(八)逆向工具 otool 介绍
查看>>
重庆哪家美术生集训好
查看>>
Axure多媒体元建,请自取
查看>>
kotlin幕后字段和幕后属性解析
查看>>
【核心模块】node.js
查看>>
苹果开发者账号团队代理转移
查看>>