当创建进程的运行时死亡时,通过Process
创建的Java Runtime.exec
是否被终止?或者我必须手动杀死他们,例如通过安装关闭钩子并通过Process.destroy
终止所有剩余的进程。 javadoc只讨论运行时继续存在时会发生什么。
答案 0 :(得分:3)
创建Java Process
作为JVM的子进程。我知道在父进程终止时杀死子进程的所有操作系统。
但是,如果您创建的进程分叉其自己的进程,而不是其子进程(或分离,例如在Windows GUI应用程序的情况下),那些进程可能会在JVM终止后继续运行。可能与in this question所描述的问题有关。