java - java程序的顺序执行==jvm的顺序激活?

标签 java jvm

我有一个 bash 脚本,它顺序调用 java 程序。这有点棘手,但我主要做的是有一个循环并使用不同的参数执行大约 1500 次相同的 java 程序。

我的问题是,当使用java 1.5(sun VM)时,每次调用java程序时都会创建一个新的jvm实例? (我不确定这个词汇是否正确......)

我是否应该通过引入一定程度的间接来避免这种情况,即构建所有参数的列表,然后执行一个采用这些参数并执行之前我的入口点的java程序?

或者我可以通过将 JVM 配置为驻留或类似的方式来处理该问题并动态调用我的程序......

希望这是清楚的......

谢谢...

最佳答案

您可以将参数保存到文件中并使用Java程序来处理它,而无需不断重新启动。您还可以通过控制台将参数通过管道输入正在运行的 Java 应用程序,类似于 ls | grep java

编辑:第一个问题。我怀疑 java 运行时会故意保留在内存中。无论如何,大多数 JRE 文件可能仍保留在磁盘缓存中。在 Windows 上,有一个 Java 快速启动服务,它可以保留 JRE 文件以减少 java 程序的启动时间。不知道*nix是否有类似的东西。

关于java - java程序的顺序执行==jvm的顺序激活?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1038614/

相关文章:

java - JVM 类格式 : Why is `constant_pool_count` one larger than it "should" be?

java - 在 Java 中重命名线程

java - 在AWS上发布Springboot webapp 404索引错误

java - Apache POI WorkFactory.Create(new File()) java.lang.OutOfMemoryError

android私有(private)属性突然变为空

java - 在Eclipse调试器中,怎样修改 "hot code replaced"可以进入运行的JVM?

java - "import java.util.*; or import java.util.random;"

java - LargeInteger 相当于 BigInteger 的 testBit?

Java Sonar 空警告 "null returned but Boolean expected"

java - 如何使用Byte Buddy更改字节码?