A.4.3设置JVM

为了执行Java代码,Octave创建了一个Java虚拟机(JVM)。默认情况下,使用在类Unix系统上配置期间检测到的JVM版本,或从注册表项指向的JVM版本HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\JREHKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java运行时环境在Windows上。JVM的默认路径可以通过设置环境变量来覆盖JAVA_HOME到JVM安装的路径。在Windows上,C: \Program Files\Java\jre-10.0.2。确保您选择了一个目录,该目录包含与Octave相匹配的JVM。

JVM在每个Octave会话中只加载一次。因此,要更改JVM的已用版本,您可能需要重新启动Octave。要检查当前使用的JVM版本,请运行版本-java.

JVM赋值固定数量的初始内存,并可能将此池扩展到固定的最大内存限制。默认值取决于Java版本(详见javamem). 内存池从JVM中运行的所有Java对象共享。这种严格的内存限制主要是为了避免web浏览器或企业服务器中的应用程序占用所有内存并导致系统崩溃。当达到最大内存限制时,Java代码将抛出异常,从而使应用程序出现故障或行为异常。

您可以在名为的文件中指定创建JVM的参数java.端口。这是一个文本文件,在其中输入包含以下内容的行十、D然后在引擎初始化期间传递给JVM的参数。

Java参数文件所在的目录从环境变量指定OctaveJAVA_DIR。如果取消设置目录javaclasspath.m而是使用resident(通常Octave主机/份额/Octave/Octave版本/m/java/).您可以通过执行找到此目录

哪个javaclasspath

这个十、参数允许您增加JVM可用的最大内存量。以下示例允许通过将以下行添加到java.端口文件

-Xmx256m

最大可能的内存量取决于您的系统。在主内存为2 GB的Windows系统上,您应该能够将此最大值设置为1 GB左右。

如果您的应用程序从一开始就需要大量内存,您还可以指定赋值给JVM的初始内存量。将以下行添加到java.端口文件以64MB的初始内存启动JVM:

-Xms64m

有关可用的更多详细信息十、Java VirtualMachine的参数发出命令java-X,并查阅Java文档。

这个D参数可以用来定义系统属性,然后Octave中的Java类可以使用这些属性。可以使用检索系统属性getProperty()的方法java.lang.系统类以下示例行定义了属性MyProperty并赋值字符串12.34.

-DMyProperty=12.34

然后,此属性的值可以从Octave中的Java对象作为字符串检索:

Octave>javaMethod(“getProperty”,“java.lang.System”,“MyProperty”);ans=12.34

版权所有 © 2024 Octave中文网

ICP备案/许可证号:黑ICP备2024030411号