java:当多个进程 运行 时,killall -3 如何工作?
java: how killall -3 works when multiple processes are running?
我知道我们可以使用 killall -3 java 来获取线程转储。
我的问题是:
如果多个 java 进程是 运行,哪个进程的线程转储被获取?
还是对所有进程进行线程转储?
线程转储不是"taken"您描述的情况。 Java JVM 通常通过将转储写入标准输出来响应信号。它可能会被捕获和存储,但这不会改变基本原则。
因此,如果您愿意,您可以向主机上的所有 JVM 发出信号以生成线程转储。
在许多情况下,使用像 jstack
这样的实用程序来收集线程转储会更有效率,因为它可以更好地控制转储的实际写入位置。
我知道我们可以使用 killall -3 java 来获取线程转储。
我的问题是: 如果多个 java 进程是 运行,哪个进程的线程转储被获取? 还是对所有进程进行线程转储?
线程转储不是"taken"您描述的情况。 Java JVM 通常通过将转储写入标准输出来响应信号。它可能会被捕获和存储,但这不会改变基本原则。
因此,如果您愿意,您可以向主机上的所有 JVM 发出信号以生成线程转储。
在许多情况下,使用像 jstack
这样的实用程序来收集线程转储会更有效率,因为它可以更好地控制转储的实际写入位置。