此问题对于Java JVM可能非常基础。如果我有一个Java独立程序,并且例如该程序的5个进程正在服务器的特定时间运行,那么我们可以说这5个Java进程在5个JVM中运行吗?JVM和Java Linux进程
通过过程,我的意思是Linux过程在这里。如果我执行ps -ef |grep java
,我会看到5个java进程出现。
此问题对于Java JVM可能非常基础。如果我有一个Java独立程序,并且例如该程序的5个进程正在服务器的特定时间运行,那么我们可以说这5个Java进程在5个JVM中运行吗?JVM和Java Linux进程
通过过程,我的意思是Linux过程在这里。如果我执行ps -ef |grep java
,我会看到5个java进程出现。
是的,这是正确的。每个java
进程都有一个JVM。
我们可以说java进程的数量是否等于所有情况下运行的JVM的数量? – Gnanam 2010-11-29 07:18:44
在正常的Linux安装中,如问题中所述。每个进程尝试多个JVM都有可能的解决方案。例如,请参见[这篇(旧)文章](http://onjava.com/pub/a/onjava/2001/09/25/optimization.html)。 – 2010-11-29 07:26:43
取决于JVM和本机库。您可能会在ps
中看到JVM线程显示不同的PID。一般来说,子进程PID将具有java进程的父进程PID作为线程。
你不能肯定地说,Linux java进程的数量==#实例化的JVM。
在Linux上,JVM使用真正的本机线程,它与进程*相似。但是,它们并不是一回事,因为只有一个进程拥有自己的地址空间。 – 2010-11-29 07:30:05
您可以运行jps
命令(如果它不在路径中,则从JDK的bin文件夹中)找出您的计算机上正在运行的Java进程(JVM)。
http://code.google.com/p/jvmtop/显示所有jvms – MRalwasser 2013-03-14 10:43:34