zoukankan      html  css  js  c++  java
  • linux查看Java线程

    一、查看Java进程pid的方式

    1. ps命令 

      ps -ef | grep java

    2. jvm自带的 jps 工具

    3. 当然还有其他命令也可以显示 netstat ,top

    二、查看Java线程的方式

    top命令

      top -Hp pid

     

    前面的PID列就是 linux下的线程编号(10进制数字)

    jstack工具 导出的线程栈中线程的编号是 16进制的,

    只要将 10 进制 转换为16进制 数字 即可 去jstack线程栈中寻找对应的线程

    三、线程问题排查

     线程问题,最常见的问题因素还是 : CPU , MEM

    1. CPU 

    CPU就是时间嘛, 占用的CPU越多,说明这个线程 占用的 CPU时间片 越多。

    解决之道,jstack多导出几次栈,找到线程调用的方法,再查代码。

    2. MEM

    内存问题,内存中对象过多(有native(JNI)调用要注意本地方法栈内存)。

  • 相关阅读:
    T2487 公交司机(搜索题)(小L的一生)
    T2485 汉诺塔升级版(普及)(递归)
    T2483 电梯(模拟题)
    将图片返回到前端
    session
    TCP协议
    socket
    断点调试
    解析字符串
    Cookie
  • 原文地址:https://www.cnblogs.com/selfchange/p/10254318.html
Copyright © 2011-2022 走看看