Java 9 中 Process API 新增了哪些方法?
Java 9 通过添加新方法改善了 Process 类,还提供了一个新接口:ProcessHandle 和ProcessHandle.Info 来获取有关进程及其信息的全部详细信息。
下面是 Java 9 中添加到 Process 的新方法列表
- boolean supportsNormalTermination(): 如果 destroy() 的实现是正常终止进程,则它可以返回 true,否则返回 false。
- long pid(): 它可以返回进程的本机进程 ID。
- ProcessHandle toHandle(): 它可以返回 Process 的 ProcessHandle。
- Stream children(): 它可以返回进程的直接子进程的快照。
- Stream descendants(): 它可以返回进程的后代快照。
- ProcessHandle.Info info(): 它可以返回有关进程信息的快照。
- CompletableFuture onExit(): 它可以返回进程终止的CompletableFuture。
示例
public class ProcessTest { public static void main(String args[]) { ProcessHandle processHandle = ProcessHandle.current(); ProcessHandle.Info processInfo = processHandle.info(); System.out.println(processHandle.pid()); System.out.println(processHandle.parent()); System.out.println(processInfo.arguments().isPresent()); System.out.println(processInfo.command().isPresent()); System.out.println(processInfo.command().get().contains("tutorialspoint")); System.out.println(processInfo.startInstant().isPresent()); } }
输出
4892 Optional[7788] false true false true
广告