Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

Java 9에서 Process API의 상위 프로세스를 얻는 방법은 무엇입니까?

<시간/>

프로세스 핸들 인터페이스를 사용하면 몇 가지 작업을 수행하고 프로세스 상태를 확인할 수 있습니다. 프로세스의 기본 pid를 제공합니다. , 시작 시간 , CPU 시간 , 사용자 , 상위 프로세스하위 항목 . parent()를 호출하여 상위 프로세스에 액세스할 수 있습니다. 메서드이고 반환 값은 선택 사항입니다. . 자식 프로세스에 부모가 없거나 부모를 사용할 수 없는 경우 비어 있습니다.

구문

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