为用户开始使用jre的每个应用程序分配一个新的JVM实例。这个JVM是新进程还是线程?为什么?
答案 0 :(得分:3)
这个JVM是新进程还是线程?
一个过程。
为什么?
a)因为那就是"现代"操作系统工作...
b)因为如果JVM是线程(在更大的进程中),那么不同的JVM将能够相互干扰不可能完全控制的方式。
c)因为尝试解决b)会很困难,并且很可能会产生重大的性能影响。
答案 1 :(得分:0)
JVM等同于操作系统进程.JVM是Java虚拟机。它是一个内存空间,其中加载类并共享对象。 这是一个过程......
答案 2 :(得分:0)
如果JVM是一个线程,那么JVM如何管理所有这些I / O控制,线程控制和控制在JVM下运行的应用程序(谁应该启动JVM?)。 线程没有单独的地址空间,在共享内存空间中运行。线程设计用于执行小任务,并且加载繁重的任务导致无法处理的情况(从OS角度来看)。线程可以轻松地进行通信,而IPC是非常耗费资源的。我们每天都在安装软件,我们正在创建流程。