定位影响CPU高的代码
一、Windows环境
需要使用到的工具软件
- process explorer
- jvisualVM
- eclipse----当前正在运行有问题的代码程序
![]()
![]()
定位步骤
1、使用process explorer定位占用进程教高的进程

2、双击进入该进程,点击thread选项卡,查看对应的线程

3、获取线程的快照
- 使用jvisualVM进行 线程dump
- 将dump的线程数据copy至文本编辑器

4、将步骤1中的tid转换为16进制的tid16,接着在线程数据中搜索,可以定位到具体的代码


二、Linux
1、使用top命令查看使用率较高的进程(pid),使用命令 top -Hp $pid,查看并记录使用率较高的线程id(tid)
查看%cpu 、time+列的数值
2、获取线程的快照(jstack) jstack命令 eg: jstack 1642 jstack $pid >$pid.txt
3、将步骤1中的tid,进行16进制转换
4、在快照中搜索strlow($tid_16)
5、查看对应的堆栈信息,定位具体的代码

浙公网安备 33010602011771号