zoukankan      html  css  js  c++  java
  • 查看某个线程占得CPU高

    jps得到pid

    pidstat -p [pid] -t 1 5        -t表示显示该进程里面所有的线程的信息

    06:20:32 PM      TGID       TID    %usr   %system  %guest    %CPU   CPU     Command
    06:20:32 PM      2996         -      6.16    0.22      0.00      6.38    18    java
    06:20:32 PM         -           2996    0.00    0.00      0.00      0.00    18    |__java
    06:20:32 PM         -           3068    0.00    0.00      0.00      0.00     1    |__java
    06:20:32 PM         -           3069    0.12    0.00      0.00      0.12    31    |__java
    06:20:32 PM         -        3070    0.12    0.00      0.00      0.12    12    |__java
    06:20:32 PM         -        3071    0.12    0.00      0.00      0.12    18    |__java
    06:20:32 PM         -        3072    0.12    0.00      0.00      0.12     8    |__java

    比如使用线程ID : TID 2996,

    转换成16进制:echo '3068' | awk '{printf("\x%02x\x%02x ", $1/256, $1%256);}'      得到 x0cx1a

    jstack -l [pid] >> textFile

    去jstack的输出文件textFile中找 nid为 c1a 的那一项,一般占cpu较高的线程是JVM的GC线程。

  • 相关阅读:
    Tomcat下使用war包发布项目
    shell编程报错:“syntax error near unexpected token `”
    undo表空间不足,ORA-30036: unable to extend segment by 8 in undo tablespace 'UNDOTBS2'
    HTML快速入门
    HTTP协议快速入门
    Java Web应用的开发模式
    使用Jekyll搭建免费的Github Pages个人博客
    前端模拟API数据的两种方式
    Node.js学习笔记
    socket.io笔记
  • 原文地址:https://www.cnblogs.com/fanweiwei/p/3977808.html
Copyright © 2011-2022 走看看