是否可以检查 JAVA 中的线程在哪个处理器上 运行?

Is it possible to check on which processor a thread is running in JAVA?

我正在使用 JAVA VisualVM 分析我的程序并获得以下有关线程执行的结果:

我不熟悉 JAVA 如何处理多线程,这是我的问题:

1.Does 绿色条表示线程实际上是 运行 在相应的时间间隔内?如果是这样的话,怎么可能同时运行线程的数量大于处理器的数量(在我的笔记本电脑上是8个)?

2.Is 可以检查线程在哪个处理器上 运行?

非常感谢!

Is it possible to check on which processor a thread was running?

不确定 VisualVM,但您可以获得 java 个具有 jstack utility 个线程的 OS 个线程 ID。
然后,您可以通过 OS.

提供的任何方法找出线程在哪些处理器上 运行