2 回答

TA貢獻1812條經驗 獲得超5個贊
OSHI 的OSProcess
類為 Windows、macOS、Linux、AIX、Solaris 和 FreeBSD 提供了這種開箱即用的功能。
SystemInfo si = new SystemInfo();
OperatingSystem os = si.getOperatingSystem();
OSProcess[] procs = os.getProcesses(0, null);
for (OSProcess p : procs) {
? ? if (p.getName().contains("Chrome")) {
? ? ? ? // do stuff with p
? ? }
}
您可能還會發現p.getParentProcessPid()和os.getChildProcesses(pid)方法可用于識別與父 Chrome 進程關聯的其他進程(不包括名稱“Chrome”)。
此外,從 Java 9 開始,核心 JDK 包含一個ProcessHandle類,其中包含一些基本信息,包括 PID。

TA貢獻2021條經驗 獲得超8個贊
我之前找不到它,因為 SIGAR 文檔無法公開獲取。我通過這個鏈接找到了它們。這包含文檔和 API 參考。
順便說一句,?public long[] find(java.lang.String query) throws SigarException
類中的方法ProcessFinder
可用于獲取操作系統詳細信息。
添加回答
舉報