Windows下Java代码CPU占用高解决问题定位

Windows下Java代码CPU占用高解决问题定位

一、情况

在点击页面时,页面数据不显示,请求到后端的逻辑中。

查看到CPU占用到有90%以上。

二、代码定位

  1. 打开任务管理器,记录需要查看的进程PID

    image-20210608114710701

    没有显示PID列可以在这设置

    image-20210608114945942

  2. 打开命令行,导出进程文件

    image-20210608115124424

    使用该命令可导出Java进程的状态信息

  3. 由于windows不自带查看线程的工具,所以使用Proccess Exploer查看。

    Process Explorer - Windows Sysinternals | Microsoft Docs 下载地址

  4. 运行Peoccess Exploer,选择需要的进程查看。

    image-20210608114245261

  5. 能够看到占用CPU高的线程,记录下线程的TID

image-20210608114438711

  1. 把十进制TID用十六进制表示。比如16396就是400C了(因为前面导出的文件线程id以十六进制表示的)

image-20210608115823059

  1. 打开我们导出的文件,搜索对应的线程,比如:400c

image-20210608140913353

能够看到代码的835行有问题,我们到代码中看。

三、分析问题,处理问题

在代码中定位到问题所在之后,结合逻辑去查看具体的原因。然后再修改代码,由于不同的业务,出现的问题也不一致,这里就不做过多描述,根据不同逻辑去解决问题即可。

相关文章

查找windows下java程序占用cpu很高的线程_jcpp9527的博客-CSDN博客

Java应用故障排查(CPU占用高、内存占用高、Full GC频繁等)

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值