java - 如何获取运行时间较短的 Java 进程的线程转储

标签 java unix thread-dump

如何获取运行时间非常短的 Java 应用程序的线程转储。应用程序启动,dosent 让我有时间收集进程的 pid。

我正在使用以下方法进行线程转储。

kill -3 <pid>

可能我正在寻找合适的 Unix 命令。

问候, 尼罗巴

最佳答案

  1. 您需要使用与 Java 进程相同的用户帐户。
  2. 运行jps -lv找到进程
  3. 运行jstack $pid

以上两个可执行文件在$JDK_HOME/bin目录下

最后,您可以尝试使用 http://fastthread.io/分析输出

关于java - 如何获取运行时间较短的 Java 进程的线程转储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48692146/

相关文章:

macos - 如何提高 mac 操作系统上的 xset 速率?

java - tomcat 中有 100 个线程 TIMED_WAITING,导致它在线程总数超过 200 时停止

java - 实时服务器 CPU 使用率高时的线程转储分析

"waiting on condition"的java线程转储意义

java - android 的离线存储管理

java - 来自 API 的 Android 搜索建议

python - 处理 unix 中文件名中的无效字符

java - 遇到变量无法打印和\n 无法工作的问题

java - 将目录设置为文件中的路径

unix - 如何仅从 ls -al 正确 grep 文件名