ProcessHandle 接口允许我们执行一些操作,并检查进程的状态。它提供了进程的本机pid、start time、CPU time、user、parent process和descendants。我们可以通过调用 parent()方法来访问父进程,返回值是Optional。如果子进程没有父进程或父进程不可用,则返回值为空。
<strong>Optional<ProcessHandle> parent()</strong>
import java.io.*; public class ParentProcessTest { public static void main(String args[]) { try { <strong>Process </strong>notepadProcess = new <strong>ProcessBuilder</strong>("notepad.exe").start(); <strong>ProcessHandle </strong>parentHandle = notepadProcess.<strong>toHandle()</strong>.<strong>parent()</strong>.get(); System.out.println("Parent Process Native PID: "+ parentHandle.<strong>pid</strong>()); } catch(IOException e) { e.<strong>printStackTrace()</strong>; } } }
在上面的例子中,将启动一个"记事本" 应用程序,并打印出父进程的本机PID。
<strong>Parent Process Native PID : 7108</strong>
以上是在Java 9中如何获取进程API的父进程?的详细内容。更多信息请关注PHP中文网其他相关文章!