您的位置:首页 > 运维架构 > Linux

Windows/Linux 下生成Thread Dump的方法

2016-01-08 00:00 417 查看
Thread Dump用来诊断Java应用的问题,可以用来查找内存泄露,发现死锁线程等等。通过它可以得到线程,线程运行状态、标识、调用的堆栈,堆栈包含完整的类名,所执行的方法,以及源代码所在的行数等等信息
使用方法:
Windows平台:
使用组合键 Ctrl + Break。
例如,控制台运行 tomcat, 即在cmd 命令行下面运行tomcat的 bin 目录下面的 startup.bat 批处理文件启动tomcat。
然后,在该控制台窗口按组合键 Ctrl + Break,即可打印出当前的Thread Dump
Linux、Unix平台:
使用命令 kill –3 pid
例如,控制台运行了 tomcat, 使用 ps -aux |grep tomcat 得到 tomcat 程序运行的pid,例如得到是 1677, 则在控制台运行 kill –3 1677,即可打印出当前的Thread Dump
tomcat 输出在/logs/catalina.out文件中

使用java自带命令jstack:
jstack pid > pid_stack.log
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: