प्रोसेस हैंडल जावा 9 में पेश किया गया इंटरफ़ेस। यह हमें क्रियाओं को करने और संबंधित प्रक्रिया की स्थिति की जाँच करने की अनुमति देता है। यह इंटरफ़ेस प्रक्रिया की मूल प्रक्रिया आईडी (पिड) . प्रदान करता है , प्रारंभ समय, संचित CPU समय, तर्क, आदेश, उपयोगकर्ता, मूल प्रक्रिया, और वंशज ।
प्रोसेस हैंडल इंटरफ़ेस हमें निम्नलिखित क्रियाएं करने की अनुमति देता है।
- यह एक ProcessHandle.Info लौटाता है एक प्रक्रिया के बारे में अधिक जानकारी युक्त
- एक प्रक्रिया की पिड
- यदि यह जीवित है
- किसी प्रक्रिया के सीधे बच्चों का स्नैपशॉट प्राप्त करें
- किसी प्रक्रिया के सभी अवतरणों का स्नैपशॉट प्राप्त करें
- वर्तमान में चल रही सभी प्रक्रियाओं का एक स्नैपशॉट प्राप्त करें
- प्रक्रिया को नष्ट होने दें
- यह एक पूर्ण करने योग्य भविष्य . देता है प्रोसेस हैंडल . के साथ जब प्रगति समाप्त हो जाती है
ProcessHandle.Inf ओ प्रक्रिया के स्नैपशॉट से जानकारी रखता है:
- प्रक्रिया का आदेश
- प्रक्रिया के तर्क
- प्रक्रिया की कमांड-लाइन
- प्रक्रिया का प्रारंभ समय
- प्रोसेस द्वारा उपयोग किया जाने वाला CPU समय
- प्रक्रिया का उपयोगकर्ता
नीचे दिए गए उदाहरण में, हम pid . प्रिंट कर सकते हैं pid () . का उपयोग करके वर्तमान प्रोसेस हैंडल का विधि, और साथ ही isAlive() . का उपयोग करके वर्तमान में चल रही प्रक्रिया की जांच करना विधि।
उदाहरण
import java.util.Optional; public class ProcessHandleTest { public static void main(String args[]) { long pid = ProcessHandle.current().pid(); ProcessHandle currentProcess = ProcessHandle.current(); System.out.println("PID: " + currentProcess.pid()); Optional<ProcessHandle> processHandle = ProcessHandle.of(pid); boolean isAlive = processHandle.isPresent() && processHandle.get().isAlive(); System.out.println(isAlive); } }
आउटपुट
PID: 6484 true