Java 9 ได้ปรับปรุง Process API และช่วยในการจัดการและควบคุมกระบวนการของระบบปฏิบัติการ ก่อน Java 9 จะเป็นการยากที่จะจัดการและควบคุมกระบวนการของระบบปฏิบัติการโดยใช้โปรแกรม Java ตั้งแต่ Java 9 มีการเพิ่มคลาสและอินเทอร์เฟซใหม่เพื่อควบคุมกระบวนการของระบบปฏิบัติการผ่านโปรแกรม Java อินเทอร์เฟซใหม่ เช่น ProcessHandle และ ProcessHandle.Info ได้เพิ่ม และยังมีการเพิ่มวิธีการใหม่ใน กระบวนการ ชั้นเรียน
ในตัวอย่างด้านล่าง เราสามารถสำรวจแผนผังกระบวนการ (ลูก และ ทายาท กระบวนการ) ของ กระบวนการ API.
ตัวอย่าง
import java.io.IOException; public class ProcessTreeTest { public static void main(String args[]) throws IOException { Runtime.getRuntime().exec("cmd"); System.out.println("Showing children processes:"); ProcessHandle processHandle = ProcessHandle.current(); processHandle.children().forEach(childProcess -> System.out.println("PID: " + childProcess.pid() + " Command: " + childProcess.info().command().get())); System.out.println("Showing descendant processes:"); processHandle.descendants().forEach(descendantProcess -> System.out.println("PID: " + descendantProcess.pid() + " Command: " + descendantProcess.info().command().get())); } }
ผลลัพธ์
Showing children processes: PID: 5092 Command: C:\WINDOWS\System32\cmd.exe Showing descendant processes: PID: 5092 Command: C:\WINDOWS\System32\cmd.exe PID: 2256 Command: C:\WINDOWS\System32\conhost.exe