如何获取java中正在运行的进程信息? [英] how to get running process information in java?

查看:108
本文介绍了如何获取java中正在运行的进程信息?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想获取有关我的操作系统中其他正在运行的进程的信息.(两件事,处理名称"和路径".)

i want to get infomation about other running processes in my os. (two things, process 'name' and 'path'.)

现在,我正在使用像"ps命令"之类的linux命令.

now, i'm using linux command like a "ps command".

Process process = Runtime.getRuntime().exec("ps x")

但是因为我也想在Windows中运行它,所以我正在搜索其他功能,这些功能可以在Windows和Linux中使用.

but because i want to run this in windows too, i'm searching other function can be works in windows and linux.

有没有不依赖OS的Java类或函数吗?

there are any java class or function have not os dependency?

推荐答案

通过 JEP 102 将为您提供帮助...这提供了平台无关的进程树访问权限...

The updated Process API in Java 9 through JEP 102 will help you if you're willing to upgrade early... This provides platform agnostic access to process trees...

请参见 ProcessHandle.allProcesses()

示例

ProcessHandle.allProcesses().forEach(processHandle -> 
    System.out.println("PID: " + processHandle.getPid() + 
    ", command: " + processHandle.info().command().orElse("Unknown")));

这篇关于如何获取java中正在运行的进程信息?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆