Java Windows根据进程id杀死进程树
时间: 2023-08-19 13:08:43 浏览: 244
Java 可以使用 `taskkill` 命令来杀死指定进程及其子进程。以下是一个示例代码,可以通过进程 ID 来杀死指定的进程树:
```java
import java.io.*;
public class KillProcessTree {
public static void main(String[] args) throws IOException {
int pid = 1234; // 要杀死的进程 ID
Runtime.getRuntime().exec("cmd /c taskkill /pid " + pid + " /t /f");
}
}
```
在上面的代码中,我们使用 `Runtime.getRuntime().exec()` 方法来执行 `taskkill` 命令。`/pid` 参数指定要杀死的进程 ID,`/t` 参数表示要杀死该进程的所有子进程,`/f` 参数表示强制杀死进程。注意,这个命令只在 Windows 系统上有效。
你可以将上述代码中的 `pid` 变量替换成你想杀死的进程 ID。
相关问题
java 进程树,“杀死进程树”在Windows上使用Java
在 Windows 上,可以使用 `taskkill` 命令来杀死进程及其子进程。在 Java 中,可以使用 `Runtime.exec()` 方法来执行命令。以下是一个示例代码:
```java
public static void killProcessTree(int pid) throws IOException {
String cmd = "taskkill /PID " + pid + " /T /F";
Runtime.getRuntime().exec(cmd);
}
```
其中,`pid` 是要杀死的进程的 ID。`/T` 参数表示杀死进程及其所有子进程,`/F` 参数表示强制终止进程。
注意,`Runtime.exec()` 方法会启动一个新的进程来执行命令,因此需要确保当前用户对 `taskkill` 命令有足够的权限。另外,由于该方法会阻塞当前线程,因此最好在新的线程中执行该方法。
阅读全文