JVM虚拟机常用的管理工具

一.命令行工具

  1. jps
    相当于Linux操作系统的ps (windows进程中的tasklist), 用来显示java进程号。
    用法 :
    jps [-option]
    参数 :
    -l :显示全类名
    -q:省略类名只显示端口号
    -v:显示虚拟机的参数
    -m:显示运行主类的参数
  2. jstat
    显示类加载的信息
    内存分布,垃圾收集, jit编辑信息,类装载信息等
    jsta - gcutil 端口号 次数
  3. jinfo
    jinfo -flag 端口号
    查看或者修改虚拟机的某个参数
    java -XX:+PrintFlagsFinal也可以进行
  4. jmap
    生成快照信息
    jmap -dump:format=b,file=d:\a.bin 8008
  5. jhat
    分析快照中的类
    jhat d:\a.bin
    访问本地的7000端口会出现全部的类信息。
  6. jstack
    jstack [option] vmid
    -l 显示附加的锁的信息
    -F 强制
    -m 如果调用本地方法可以显示C/C++堆栈
#用来打印thread信息
Map<Thread, StackTraceElement[]>map =  Thread.getAllStackTraces();
       for(Map.Entry<Thread, StackTraceElement[] >en : map.entrySet()){
    
    
           Thread t = en.getKey();
           StackTraceElement[] v = en.getValue();
           System.out.println("Thread:"  + t.getName());
           for(StackTraceElement s : v){
    
    
               System.out.println("\t" + s.toString());
           }

猜你喜欢

转载自blog.csdn.net/fuzekun/article/details/105164807