2015年6月9日星期二

Java_021:JDK 自带小工具介绍之四:jstack

环境:MAC OS X 10.10.3 + Oracle JDK 1.7.0_80

jstack 显示指定的 java 进程的 thread dump,或者显示一个已经生成的 core 文件内容,或者连接远程机器的服务的 java 堆栈信息。

1. 用法
(1)连接到运行的 java 进程:jstack [-l] <pid>
(2)连接到挂起的 java 进程:jstack -F [-m] [-l] <pid>
(3)连接到一个 core 文件:jstack [-m] [-l] <executable> <core>
其中 executable 是产生 core 文件的 java 命令。
(4)连接到远程机器的一个 Debug Server :jstack [-m] [-l] [server_id@]<remote server IP or hostname>
其中 server_id 是远程机器上的一个 Debug Server ID。

2. 参数说明
(1)-F  强制产生一个 thread dump。
(2)-m 输出 java 和 native 线程堆栈。
(3) -l  长格式输出,增加额外的锁信息。
(4) -h 帮助

3. 例子
(1)jstack –l 23561
(2)jstack $JAVA_HOME/bin/java core
(3)jstack -m 21177

参考文献:
1. http://blog.csdn.net/zhaozheng7758/article/details/8623535/
2. https://docs.oracle.com/javase/8/docs/technotes/guides/troubleshoot/tooldescr016.html
3. https://docs.oracle.com/javase/8/docs/technotes/tools/windows/jstack.html

没有评论: