<分区>
我需要将 java 线程 id 与其本地 linux pi 相匹配。
我不能使用 kill -3 <PID>
因为我不拥有输出流或 jstack <PID>
因为我运行的是 JRE 而不是 JDK。
已尝试 pstack
来自 linux 端,以及来自 java 端的 JVM 管理类 - 没有任何成功。
感谢您的协助。
谢谢。
标签 java linux performance
<分区>
我需要将 java 线程 id 与其本地 linux pi 相匹配。
我不能使用 kill -3 <PID>
因为我不拥有输出流或 jstack <PID>
因为我运行的是 JRE 而不是 JDK。
已尝试 pstack
来自 linux 端,以及来自 java 端的 JVM 管理类 - 没有任何成功。
感谢您的协助。
谢谢。
最佳答案
Thread
id 与底层 OS 线程 id 无关。它是从 static
计数器分配给该 Thread
实例的值。
/* For generating thread ID */
private static long threadSeqNumber;
private static synchronized long nextThreadID() {
return ++threadSeqNumber;
}
您将需要使用一些native
调用来获取实际值,可能使用Juned's link in the comments. 中的建议
关于java - 将 Java 线程 ID 与 native Linux PID 匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19252149/