如何在 Java 9 中获取 Process API 的父进程?
ProcessHandle 接口允许我们执行某些操作,并检查进程的状态。它提供进程的本地pid、开始时间、CPU 时间、用户、父进程和子进程。我们可以通过调用 parent() 方法来访问父进程,返回值为Optional。如果子进程没有父进程或父进程不可用,则它为空。
语法
Optional<ProcessHandle> parent()
示例
import java.io.*; public class ParentProcessTest { public static void main(String args[]) { try { Process notepadProcess = new ProcessBuilder("notepad.exe").start(); ProcessHandle parentHandle = notepadProcess.toHandle().parent().get(); System.out.println("Parent Process Native PID: "+ parentHandle.pid()); } catch(IOException e) { e.printStackTrace(); } } }
在上面的示例中,将启动“记事本”应用程序,并打印父进程的本地 PID。
输出
Parent Process Native PID : 7108
广告