为什么Java会产生如此多的进程?

Min*_*ock 8 java debian process htop

我编写了一个我在debian 7 vserver上运行的Java服务器应用程序.应用程序本身工作得很好,但我注意到一些非常奇怪的东西.

在调用之后,java -Xmx200M -jar "CCU.jar我希望看到一个运行我的Java进程CCU.jar.

调用top时只有一个java进程(如预期的那样).但是当我打电话时,htop我得到了这个:

htop与奇怪的子进程

所有这些子进程看起来是同一个进程(它们在表中显示的数据完全相同)但具有不同的PID?

ort*_*tis 6

Java应用程序永远不是单线程的(垃圾收集器线程等).所以你总是得到几个线程.而且,Linux实现线程作为轻量级进程因此,每个Java线程将作为具有唯一PID的进程出现htop.