<分区>
我一直认为“引擎”是正在运行的东西,因此需要启动和停止。但我也听说过术语“运行时”(“Java Runtime Environment”等),这似乎也意味着某些东西正在运行......
它们是同一个概念,还是不同的概念?如果是这样,它们有何不同,什么标准使某物成为“引擎”与“运行时”?
<分区>
我一直认为“引擎”是正在运行的东西,因此需要启动和停止。但我也听说过术语“运行时”(“Java Runtime Environment”等),这似乎也意味着某些东西正在运行......
它们是同一个概念,还是不同的概念?如果是这样,它们有何不同,什么标准使某物成为“引擎”与“运行时”?
最佳答案
引擎通常是指一些执行实际工作的软件组件。例如,数据库引擎从开发人员那里抽象出所有关于如何存储数据以及我们如何有效地搜索数据的细节。
Java 虚拟机 (JVM) 是在您的物理计算机中运行的虚拟计算机。虽然 JVM 确实做了相当多的复杂和低级别的工作,但术语引擎通常指的是更高级别的软件组件。我们几乎将 JRE 视为处理器。我们有一个运行字节码的虚拟 CPU,而不是运行机器代码的物理 CPU。 再次使用数据库示例:许多数据库是用 Java 编写的,因此在 Java 运行时环境 中运行。因此,JRE 正在运行一个数据库引擎 来完成这项工作。
关于java - "engine"和 "runtime"有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17091033/