【发布时间】:2016-11-03 13:40:12
【问题描述】:
从我的 java web 应用程序中,我正在创建进程对象,并在传递命令后启动进程。 随着进程的启动,我正在维护另一个线程,它正在查看当前进程的退出值。
process.exitValue() 是否会导致当前线程等待?
更新问题: 请您提供一些关于为什么 process.destroy() 能够杀死 gcc(for c and c++) ,java 进程的信息,但是当进入以单声道运行的 c# 程序时,这些进程不能被破坏,为什么?
我可以在 ubuntu 服务器中运行 Process 对象时从它获取 pid 值以通过 pid 杀死进程吗?
【问题讨论】:
-
它的文档是怎么说的?
-
返回子进程的退出值。返回: 此 Process 对象表示的子流程的退出值。按照惯例,值 0 表示正常终止。抛出: IllegalThreadStateException - 如果此 Process 对象表示的子进程尚未终止但未提及有关等待的任何内容。你可以看到它提到的 waitFor() 。 @Kayaman
-
当然没有提到等待。如果进程没有终止,它会抛出异常,因此不会发生等待,但会抛出大量异常。