zoukankan      html  css  js  c++  java
  • JDK内置工具jstack(Java Stack Trace)(转)

    1、介绍

    jstack用于打印出给定的java进程ID或core file或远程调试服务的Java堆栈信息,如果是在64位机器上,需要指定选项"-J-d64",Windows的jstack使用方式只支持以下的这种方式:

    jstack [-l] pid

    如果java程序崩溃生成core文件,jstack工具可以用来获得core文件的java stack和native stack的信息,从而可以轻松地知道java程序是如何崩溃和在程序何处发生问题。另外,jstack工具还可以附属到正在运行的java程序中,看到当时运行的java程序的java stack和native stack的信息, 如果现在运行的java程序呈现hung的状态,jstack是非常有用的。

    2、命令格式

    jstack [ option ] pid
    jstack [ option ] executable core
    jstack [ option ] [server-id@]remote-hostname-or-IP

    3、常用参数说明

    1)、options: 
      executable Java executable from which the core dump was produced.
      (可能是产生core dump的java可执行程序)
      core 将被打印信息的core dump文件
      remote-hostname-or-IP 远程debug服务的主机名或ip
      server-id 唯一id,假如一台主机上多个远程debug服务 
    2)、基本参数:
      -F当’jstack [-l] pid’没有相应的时候强制打印栈信息
      -l长列表. 打印关于锁的附加信息,例如属于java.util.concurrent的ownable synchronizers列表.
      -m打印java和native c/c++框架的所有栈信息.
      -h | -help打印帮助信息
      pid 需要被打印配置信息的java进程id,可以用jps查询.

    以上转自:http://blog.csdn.net/fenglibing/article/details/6411940

    总结:可能存在这样一个情况,如果在程序上某个方法异常了,可以通过try catch去捕获,而如果连JVM都挂了的情况下,这个try catch就没任何用了。那么现在可以通过jstack去捕获这些异常。

  • 相关阅读:
    各种协议与HTTP协议之间的关系
    在浏览器中输入url地址到显示主页的过程
    TCP 协议如何保证可靠传输
    TCP,UDP 协议的区别
    TCP 三次握手和四次挥手
    OSI与TCP/IP各层的结构与功能,用到的协议
    424. 替换后的最长重复字符
    webstorm快捷键
    S1:动态方法调用:call & apply
    S1:原型继承
  • 原文地址:https://www.cnblogs.com/EasonJim/p/6841619.html
Copyright © 2011-2022 走看看