我有一个父 JVM(我称之为 JVM_parent),我在其中使用 Runtime.getRuntime().exec("java ...... .")
(我称之为JVM_child)
现在,当我关闭(正常或强制)JVM_parent 时,JVM_child 也会退出。
如何防止 JVM_child 在 JVM_parent 关闭时关闭?我在 Linux 上运行。
最佳答案
子进程将从父进程继承,因此终止信号也会终止子进程。为防止这种情况,您需要将 child 与 parent 分离,这样它就不会收到这些信号并继续。
使用它的最简单方法是运行类似 bash nohup prog &
的东西,它在单独的子进程中运行它并且不监听 HUP 信号。请注意,运行 bash -c
是不够的。您可以使用 pstree
之类的东西来判断 bash 进程是否已完成。
关于java - 防止子 JVM 在其父 JVM 退出时退出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36498713/