资讯专栏INFORMATION COLUMN

java程序cpu过高查看快速解决问题

Rocture / 475人阅读

摘要:操作步骤查看占用过高的进程获取进程得到占用过高的线程获取其通过命令会得到一个进制字符串上一步得到进制定位代码问题处

操作步骤
top //查看cpu占用过高的进程 获取进程id
ps -mp pid -o THREAD,tid,time // 得到cpu占用过高的线程 获取其id

or 通过命令:top -Hp 15970

printf "%x " pid // 会得到一个16进制字符串
jstack pid | grep [上一步得到16进制] -A 60 //定位代码问题处

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/66997.html

相关文章

  • 【VisualVM 简明教程】(4): 分析CPU

    摘要:快照,带线程命令,是显示全部进程,是显示线程,全格式输出显示进程树,不加显示所有实时快照推荐程度按数字从小到大。 有时候好好的程序放到生产服务器上一段时间后,就会发现服务器响应缓慢,进而进一步发现是cpu过高,于是就慌了,造成cpu过高的原因很多,不过大多是由于资源吃紧造成,例如:sql执行过慢,程序里存在死循环,数据库连接未释放,网络阻塞导致的第三方框架代码出现死循环,大量的操作导致...

    ormsf 评论0 收藏0
  • JVM内存及CPU占用过高排查

    摘要:问题排查方法方法一通过命令查看当前及内存情况获得通过查看有问题的线程说明指显示线程,是指定进程可以看到两个或内存占用较高的线程,记下此处的即为线程标识,将其从十进制转成十六进制表示,如通过命令获取当前线程栈,可暂时保存到一个文件中, 问题排查方法 方法一 通过top命令查看当前CPU及内存情况 top 86786 java 98.4 13:22.7 获得pid...

    zxhaaa 评论0 收藏0
  • Java Trouble Shooting - 使用线程栈

    摘要:线程的优先级代表线程的优先级为线程代表线程为,而代表该线程对应的操作系统级别的线程。若是有运行图形界面的环境,也可以使用一些图形化的工具,例如来生成线程栈文件。使用线程栈定位问题发现死锁当两个或多个线程正在等待被对方占有的锁,死锁就会发生。 什么是线程栈(thread dump) 线程栈是某个时间点,JVM所有线程的活动状态的一个汇总;通过线程栈,可以查看某个时间点,各个线程正在做什么...

    DataPipeline 评论0 收藏0

发表评论

0条评论

Rocture

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<