【问题标题】:Single threaded Java application - htop shows 14 rows单线程 Java 应用程序 - htop 显示 14 行
【发布时间】:2016-09-24 14:40:29
【问题描述】:

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

这些条目代表什么?

【问题讨论】:

标签: java linux htop


【解决方案1】:

这些肯定是线程(要确认,请按 F2 在 htop 中进入设置,选择Display Options 屏幕,然后选中选项[x] Display threads in a different color)。

并不是因为您自己没有创建线程,Java VM 就没有。查看以下示例程序:

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

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

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

  • 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这一事实有关,我不确定。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-16
    • 2021-01-16
    相关资源
    最近更新 更多