Computer >> Máy Tính >  >> Lập trình >> Java

Làm cách nào để lấy quy trình mẹ của API quy trình trong Java 9?

ProcessHandle giao diện cho phép chúng tôi thực hiện một số hành động và kiểm tra trạng thái của một quy trình. Nó cung cấp pid gốc của quy trình , bắt đầu thời gian , CPU thời gian , người dùng , cha mẹ quy trình con cháu . Chúng tôi có thể có quyền truy cập vào quy trình mẹ bằng cách gọi cha () và giá trị trả về là Tùy chọn . Nó trống nếu process con không có cha hoặc nếu cha không có sẵn.

Cú pháp

Optional<ProcessHandle> parent()

Ví dụ

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();
      }
   }
}

Trong ví dụ trên, một " notepad" ứng dụng sẽ được khởi chạy và cũng in ra PID gốc của quy trình gốc.

Đầu ra

Parent Process Native PID : 7108