微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jstack 命令

NAME
       jstack - Prints Java thread stack traces for a Java process,core file,or remote debug server.

SYnopSIS
       jstack [ options ] pid

       jstack [ options ] executable core

       jstack [ options ] [ [email protected] ] remote-hostname-or-IP

参数:

     -F 当’jstack [-l] pid’没有相应的时候强制打印栈信息,如果直接jstack无响应时,用于强制jstack,一般情况不需要使用。
     -l 长列表. 打印关于锁的附加信息,例如属于java.util.concurrent的ownable synchronizers列表,会使得JVM停顿得长久得多(可能会差很多倍,比如普通的jstack可能几毫秒和一次GC没区别,加了 -l 就是近一秒的时间),-l 建议不要用。
     -m 打印java和native c/c++ 框架的所有栈信息.可以打印JVM的堆栈,显示上Native的栈帧,一般应用排查不需要使用。

示例:

jstack pid

分享图片

 

查看线程cpu占用:

top -H -p  pid //找到占用较高的线程id

python -c "print hex(线程id)" //转换成16进制的地址

jstack pid |grep  -A30 16进制地址

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐