jps、jstack指令使用

1、jps(java process status):获取当前所有java进程信息

  一般用法:

  1)jps

    获取当前java进程pid和名称

    

  2)jps -l

    获取当前java进程pid和java应用的main方法所在package的类名

    

  3)jps -v

    获取当前java进程pid、应用名称、jvm参数(每个java进程对应一个jvm)

    

2、jstack:打印指定java进程的堆栈信息

  一般用法:

  1)jstack [pid]

    输出当前进程jvm所有的线程堆栈信息(thread dump)

    

    运行main方法,jps查看进程pid

    

    jstack查看main线程堆栈信息

    

    

    堆栈信息解释:

        

    “Reference Handler”:线程名称

    “daemon“:线程类型

    “prio”:优先级,默认是5(10最高,1最低)

    “tid”:jvm线程id,id=java.lang.Thread.getId()

    “nid”:Native Thread Id,系统线程id(top命令查看的线程id)

    in Object.wait():线程状态

    [0x0000000019f7e000]:起始栈地址

    java thread stack trace:执行堆栈,第二行开始到结束的一段信息

    

posted @ 2018-08-12 21:07  Sency123  阅读(303)  评论(0编辑  收藏  举报