java.exe、javaw.exe和jvm.dll的区别
使用 java.exe、javaw.exe 和 jvm.dll 运行应用程序(例如 Eclipse)有什么区别?另外,它在性能方面有什么不同吗?
What is the difference in running an application (for example, Eclipse) with java.exe, javaw.exe and jvm.dll? Also, does it make any difference in terms of performance?
推荐答案
jvm.dll
是 JVM 的实际 Windows 实现(或者更好的是,主入口点).C 或 C++ 应用程序可以使用此 DLL 来运行嵌入式 Java 运行时,这将允许应用程序直接与 JVM 交互,例如如果他们想使用 Java 作为其 GUI.jvm.dll
is the actual Windows implementation of the JVM (or better, the main entry point). C or C++ applications can use this DLL to run an embedded Java runtime, and that would allow the application to interface directly with the JVM, e.g. if they want to use Java for its GUI.java.exe
是 DLL 的包装器,因此人们可以在不需要自定义启动器应用程序的情况下实际运行 Java 类.它是一个 Win32 控制台应用程序,因此如果 exe 不是从批处理文件运行,Windows 将打开一个新的命令提示符窗口.java.exe
is a wrapper around the DLL so that people can actually run Java classes without the need for a custom launcher application. It is a Win32 Console application, so Windows will open a fresh Command Prompt window if the exe is not run from a batch file.javaw.exe
是一个类似于java.exe
的包装器,但它是一个 Win32 GUI 应用程序.Windows 不必打开命令提示符窗口,而这正是您想要运行的 GUI 应用程序打开自己的窗口.javaw.exe
is a wrapper likejava.exe
, but it is a Win32 GUI application. Windows doesn't have to open a Command Prompt window, which is exactly what you want to run a GUI application which opens its own windows.除了进程创建和初始化的开销之外,这些不应该对性能产生任何影响.
These shouldn't make any difference in performance except for the overhead of process creation and initialization.
最重要的是:没关系;如果您担心这一点,您可能实际上希望保持 Java 运行而不是启动它数百次.
The most important thing: it should't matter; if you are worrying about this you might actually want to keep Java running instead of launching it hundreds of times.
相关文章