java - 单线程 Java 应用程序 - htop 显示 14 行

标签 java linux htop

我有一个简单的 Java 单线程应用程序。令人惊讶的是,当我运行它并打开 htop 时,我看到了大约 14 个子条目,如以下屏幕截图所示。

screenshot

这些条目代表什么?

最佳答案

这些肯定是线程(确认,按 F2 进入 htop 中的设置,选择 Display Options 屏幕,然后检查选项 [x]以不同颜色显示线程)。

仅仅因为您没有自己创建线程,Java VM 就不会这样做。查看以下示例程序:

public class Hello {
   public static void main(String S[]) {
      for(;;) {
      }
   }
}

它还在我的 htop 窗口中生成 14 个条目。当我运行 jconsole(JDK 附带的标准工具)并连接到 Hello 进程时,我看到以下信息:

enter image description here

线程名称暗示了它们的作用:

  • main - 我的程序本身
  • 引用处理程序
  • 终结器
  • 信号调度器
  • 附加监听器
  • RMI TCP Accept-0
  • RMI TCP 连接(1)-127.0.0.1
  • RMI 调度程序(0)
  • JMX 服务器连接超时 14
  • RMI TCP 连接(2)-127.0.0.1
  • RMI TCP 连接(4)-127.0.0.1

其中一些像 Finalizer 线程与 Java 垃圾收集器有关。上面的一些条目可能与进程连接到 jconsole 这一事实有关,我不确定。

关于java - 单线程 Java 应用程序 - htop 显示 14 行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39677563/

相关文章:

java - 尝试实现一个简单的 Jersey Rest 项目

java - 在 Joda Time 中创建一个没有年份的日期范围?

java - Spring Data Neo4j 4.x 和 sdn-大学 : Neo4jTemplate no autowire'ing

linux - htop如何收集linux中的系统信息

java - 两个Relativelayouts垂直显示

linux - 如何多次返回被调用函数/NASM

linux - 由于打开的选项卡过多,Selenium Python Linux headless chrome 驱动程序变得无法访问

java - Ubuntu Linux 中的 Eclipse 外观配置

c++ - OpenCV forEach 函数并行访问