Java 9 中 Process API 的核心庫有哪些變化?


在 Java 9 中,可以透過本機呼叫檢索程序的 PID ,並且可以透過 ProcessHandle 實現。我們還可以檢索有關當前正在執行的 Java 程序 (JVM) 和 Info (ProcessHandle) 類的資訊,其中包含有關程序的詳細資訊。我們還可以返回系統中當前正在執行的所有程序的 快照 

示例

import java.lang.ProcessHandle.Info;

public class ProcessAPIChanges {
   public void detailedAPIInfo(ProcessHandle processHandle) {
      Info processInfo = processHandle.info();
      System.out.println("Detailed Process Info is Provided Below: ");
      System.out.println("[Executable Name] " + processInfo.command().get());
      System.out.println("[User Name] " + processInfo.user().get());
      System.out.println("[Start Time] " + processInfo.startInstant().get().toString());
   }
   public static void main(String args[]) {
      System.out.println("Process API Changes (Core Library) ");
      ProcessAPIChanges processAPIChanges = new ProcessAPIChanges();
      ProcessHandle processHandle = ProcessHandle.current();

      System.out.println("[Current Process Id] " + processHandle.pid());

      processAPIChanges.detailedAPIInfo(processHandle);
      ProcessHandle.allProcesses()
         .filter(ph -> ph.info().command().isPresent())
         .limit(4).forEach((process) -> processAPIChanges.detailedAPIInfo(process));
   }
}

輸出

Process API Changes (Core Library)
[Current Process Id] 5724
Detailed Process Info is Provided Below:
[Executable Name] C:\Program Files\Java\jdk-9.0.4\bin\java.exe
[User Name] Tutorialspoint\User
[Start Time] 2020-04-01T07:35:43.152Z
Detailed Process Info is Provided Below:
[Executable Name] C:\WINDOWS\System32\taskhostex.exe
[User Name] Tutorialspoint\User
[Start Time] 2020-04-01T04:14:36.241Z
Detailed Process Info is Provided Below:
[Executable Name] C:\Program Files\Synaptics\SynTP\SynTPEnh.exe
[User Name] Tutorialspoint\User
[Start Time] 2020-04-01T04:14:36.257Z
Detailed Process Info is Provided Below:
[Executable Name] C:\WINDOWS\explorer.exe
[User Name] Tutorialspoint\User
[Start Time] 2020-04-01T04:14:36.335Z
Detailed Process Info is Provided Below:
[Executable Name] C:\Program Files (x86)\Dell Wireless\Bluetooth Suite\BtvStack.exe
[User Name] Tutorialspoint\User
[Start Time] 2020-04-01T04:14:51.594Z

更新時間: 2020 年 4 月 1 日

94 次瀏覽

開啟您的 職業生涯

完成課程即可獲得認證

開始
廣告
© . All rights reserved.