如何获取进程(外部程序)时间,从java应用程序运行进程的CPU使用情况?

时间:2013-06-19 09:47:20

标签: java external-process

我知道如何在java中运行外部程序:

public class Test {
  public static void main(String[] args) throws Exception {
    Process p = Runtime.getRuntime().exec(
       "\"c:/my-simple-app.exe\"");
    p.waitFor();
  }
}

但是,当我像这样运行它时,如何获得所有程序属性?我的意思是:这个过程的系统时间(运行所需的系统时间),CPU使用率(仅适用于这个过程),......是否可能?

1 个答案:

答案 0 :(得分:2)

在一个单独的线程中运行该程序,然后运行tasklist /v进程(如果是Windows),拦截输出,将行拆分为列,找到my-simple-app.exe并获取必要的信息。如果任务列表信息不够,则读取进程ID列表单任务列表输出并运行其他一些工具来获取更多信息。