2 回答

TA貢獻(xiàn)1812條經(jīng)驗(yàn) 獲得超5個(gè)贊
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
? ? }
}
您可能還會(huì)發(fā)現(xiàn)p.getParentProcessPid()和os.getChildProcesses(pid)方法可用于識(shí)別與父 Chrome 進(jìn)程關(guān)聯(lián)的其他進(jìn)程(不包括名稱“Chrome”)。
此外,從 Java 9 開始,核心 JDK 包含一個(gè)ProcessHandle類,其中包含一些基本信息,包括 PID。

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