ProcessHandle इंटरफेस
ProcessHandle इंटरफेस हमें कुछ क्रियाएं करने और प्रोसेस की स्थिति जांचने की अनुमति देता है। यह प्रोसेस का नेटिव pid, प्रारंभ समय, CPU समय, उपयोगकर्ता, पैरेंट प्रोसेस, और वंशज प्रदान करता है। हम parent() मेथड को कॉल करके पैरेंट प्रोसेस तक पहुंच प्राप्त कर सकते हैं, और रिटर्न वैल्यू Optional है। यह खाली होता है यदि चाइल्ड प्रोसेस का कोई पैरेंट नहीं है या पैरेंट उपलब्ध नहीं है।
सिंटैक्स
Optional<ProcessHandle> parent()
उदाहरण: नोटपैड प्रोसेस का पैरेंट PID प्राप्त करना
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
ProcessHandle API ऑपरेटिंग सिस्टम प्रोसेसेज के साथ इंटरैक्शन के लिए आधुनिक, क्षमतावान API प्रदान करता है।