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

更新時間:2020-02-21

114 瀏覽量

開啟您的 職業生涯

完成課程並獲得認證

開始學習
廣告