MATLAB编译器运行时(MCR)中的JVM有什么作用?

时间:2010-01-30 16:46:15

标签: java matlab

我想知道MCR中JVM(Java虚拟机)的用途是什么,如果我在-NOJVM中调用MWApplication.initializeApplication()标志会有什么影响?

由于我编写了一个包含GUI的Java应用程序,我尝试使用/不使用-NOJVM选项。只有GUI的LookandFeel发生变化。

2 个答案:

答案 0 :(得分:6)

Matlab包含一个内部JVM,用于所有Matlab生成的GUI(图形,对话框窗口,桌面/编辑器等)。通过使用-NOJVM开关启动Matlab,您基本上使用Matlab作为纯计算引擎(引擎基于c / c ++,不使用JVM)。如果您的所有GUI都是在Matlab外部处理的,那么您可能不需要内部JVM,它会带来内存和启动性能成本。

答案 1 :(得分:-3)

我只是在猜测,因为我真的不知道Matlab,但也许它只是Matlab的一个标志,指示他使用其内部JVM或使用操作系统JVM。

例如,在“C:\ windows \ program files”下的Matlab目录中,您可能会找到一个包含Java JRE的目录,这是默认情况下使用的目录,但是如果您使用-NOJVM标志,它将忽略它内部JRE并找到系统的默认JRE,通常是环境变量JAVA_HOME指向的。

它只是一个猜测,没有别的; - )