分析java线程占用cpu或者内存高的代码

分析java线程占用cpu或者内存高的代码
1、通过top查看占用cpu或者内存高的进程(然后按下大写P会以cpu从大到小排序,大写M以内存大小排序)

2、通过对应的cpu找到PID也就是进程对应的pid,例如pid=19485

3、通过命令top -Hp PID 例如top -Hp 19485就可以列出该进程下的所有线程id

4、通过输出大写的P查看线程占用cpu最高的或者通过大写M查看内存占用最高的,然后找到19530这个线程id

5、使用命令printf “%x\n” 19530输出线程id对应的十六进制码,1ab4f这个码是为了过滤线程id查到对应的代码

6、使用命令jstack PID|grep 4c4a【jstack 19485|grep 4c4a  备注PID是进程的id,4c4a是这个进程下的一个占用最高cpu的线程id对应的十六进制码】

7、通过上面的输出找出对应的消耗CPU的代码。jstack 19485|grep 4c4a

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值