java监控计算机进程
时间: 2023-05-30 18:02:50 浏览: 97
可以使用Java的ManagementFactory类和OperatingSystemMXBean接口来监控计算机进程。
以下是一个简单的示例程序,可以列出当前计算机运行的所有进程及其进程ID:
```
import java.lang.management.ManagementFactory;
import java.lang.management.OperatingSystemMXBean;
import java.util.List;
public class ProcessMonitor {
public static void main(String[] args) {
OperatingSystemMXBean os = ManagementFactory.getOperatingSystemMXBean();
List<ProcessHandle> processes = ProcessHandle.allProcesses().toList();
System.out.println("Total processes: " + processes.size());
for (ProcessHandle process : processes) {
System.out.println("Process ID: " + process.pid() + " | Process Name: " + process.info().command().orElse(""));
}
}
}
```
运行以上程序,将输出类似下面的结果:
```
Total processes: 170
Process ID: 0 | Process Name:
Process ID: 4 | Process Name:
Process ID: 168 | Process Name:
Process ID: 300 | Process Name:
...
```
其中,ProcessHandle.allProcesses()方法返回一个ProcessHandle对象的流,可以通过toList()方法将其转换为列表。然后可以遍历列表,使用ProcessHandle对象的pid()方法和info()方法获取进程的ID和名称。
相关推荐
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)