相关疑难解决方法(0)

获取当前在Java中运行的所有线程的列表

有没有什么办法可以获得当前JVM中所有正在运行的Thread的列表(包括我的类未启动的Threads)?

是否也可以在列表中获取所有Thread的Thread和Class对象?

我希望能够通过代码完成此操作.

java multithreading jvm

221
推荐指数
10
解决办法
19万
查看次数

JVM核心线程

在我的机器上启动JVM实例时,有一个运行无限睡眠的简单类main(),我在JVM中看到了四个关键线程(除了主线程):

  1. 附加监听器
  2. 参考处理程序
  3. 终结
  4. 信号调度员
  5. DestroyJavaVM

我很想知道每个核心JVM线程的用途.通过快速的互联网搜索,我在这些主题上找到了以下详细信息:

  1. 附加侦听器:动态附加在目标JVM中具有附加侦听器线程.这是在第一个附加请求发生时启动的线程.
  2. 信号调度程序:当操作系统向JVM发出信号时,信号调度程序线程会将信号传递给适当的处理程序.
  3. 引用处理程序:用于将待处理引用排入队列的高优先级线程.GC创建一个简单的链接引用列表,需要进行处理,并且该线程会快速将它们添加到正确的队列中,并通知ReferenceQueue侦听器.
  4. Finalizer:Finalizer线程调用终结器方法.
  5. DestroyJavaVM:该线程在程序退出时卸载Java VM.大多数时候它应该等待.

我想了解这些线程和参考文档(如果已知)的更多细节(或理解上的更正).

java multithreading jvm

8
推荐指数
1
解决办法
2355
查看次数

标签 统计

java ×2

jvm ×2

multithreading ×2