What does java quot;VM threadquot; do?(java“虚拟机线程是什么意思?做?)
问题描述
我使用 jstack 来输出线程信息.还有一个线程:VM 线程"prio=10 tid=0x0878b400 nid=0x760a 可运行
I use jstack to output the thread info. And there is a thread: "VM Thread" prio=10 tid=0x0878b400 nid=0x760a runnable
这个线程是用来做什么的?它占用 50% 的 CPU 使用率和大部分 CPU 时间
What is this thread used to do? It takes 50% CPU usage and most of CPU time
推荐答案
VM线程定义这里 作为:
该线程等待需要 JVM 到达安全点的操作出现.这些操作必须在单独的线程上发生的原因是因为它们都要求 JVM 处于不能对堆进行修改的安全点.该线程执行的操作类型是stop-the-world"垃圾收集、线程堆栈转储、线程挂起和偏向锁定撤销.
This thread waits for operations to appear that require the JVM to reach a safe-point. The reason these operations have to happen on a separate thread is because they all require the JVM to be at a safe point where modifications to the heap can not occur. The type of operations performed by this thread are "stop-the-world" garbage collections, thread stack dumps, thread suspension and biased locking revocation.
在去重的 SO 答案中还提供了一些信息 这里.
There's also some information provided in a de-duplicated SO answer here.
这篇关于java“虚拟机线程"是什么意思?做?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:java“虚拟机线程"是什么意思?做?
基础教程推荐
- 在 Libgdx 中处理屏幕的正确方法 2022-01-01
- 降序排序:Java Map 2022-01-01
- Java Keytool 导入证书后出错,"keytool error: java.io.FileNotFoundException &拒绝访问" 2022-01-01
- Java:带有char数组的println给出乱码 2022-01-01
- 减少 JVM 暂停时间 >1 秒使用 UseConcMarkSweepGC 2022-01-01
- FirebaseListAdapter 不推送聊天应用程序的单个项目 - Firebase-Ui 3.1 2022-01-01
- 无法使用修饰符“public final"访问 java.util.Ha 2022-01-01
- 如何使用 Java 创建 X509 证书? 2022-01-01
- 设置 bean 时出现 Nullpointerexception 2022-01-01
- “未找到匹配项"使用 matcher 的 group 方法时 2022-01-01