java - 等待进程完全启动

标签 java process runtime wait

我正在使用运行时启动一个 jar 文件,并且我只想在该 jar 文件完全启动时继续。 它与 Thread.sleep() 一起使用,但我希望有准确的 sleep 持续时间,而不是任意的持续时间。

我读到 waitFor() 会等待进程结束,但这不是我想要的。

Runtime runtime = Runtime.getRuntime();
process = runtime.exec("java -jar app.jar");
// wait until app fully started
...

最佳答案

只有您作为开发人员才能决定应用程序是否完全初始化。

例如,在您的应用程序中添加逻辑,这将创建一个常规的空文件(假设它是 app.started)。然后在 runtime.exec() 之后检查文件是否存在,但有一些延迟。

关于java - 等待进程完全启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50530370/

相关文章:

java - 禁用客户健康检查 - Hystrix

multithreading - 在Perl中实现看门狗

c - Linux C 进程 pid 全局可见性

python - 按名称杀死进程?

java - Runtime.exec 失败,没有任何异常/警告/错误代码

java - Android初学者onClick崩溃

java - 删除蓝框 JavaFX

java - Hibernate `Session` 是否有一个名为 `find()` 的方法,它接受 HQL 字符串?

java - 如何通过Java代码设置hibernate.cfg.xml?

c++ - 具有不同 C/C++ 运行时库的 exe 和 dll 之间的接口(interface)