关于计算机上任何运行进程的详细信息

时间:2012-02-25 09:34:39

标签: java cpu

我的项目是“进程迁移”。我想使用java来测量cpu上特定执行进程所承担的负载。因此,需要比其他进程需要大负载的进程才能迁移到另一台计算机以便进一步执行。

2 个答案:

答案 0 :(得分:0)

在Linux上,您可以使用ps来使用/proc/进程,但我会查看顶部或time进程。所有命令行工具。

答案 1 :(得分:0)

如果您使用的是Linux系统,则可以使用ps或top命令获取有关当前正在运行的进程的信息。

您可以使用Runtime.exec()方法从Java中执行这些命令。例如:

Runtime.getRuntime().exec("ps")

如果需要指定参数,请使用String数组。

Runtime.getRuntime().exec(new String[] { "ps", "-e" })

无论使用哪种方法,都需要在exec()返回的Process对象上打开文件描述符,以发送输入或获取其输出:

Process process = Runtime.getRuntime().exec("...command...");
InputStream input = process.getInputStream();

然后你需要解析结果。