如何获取已启动进程的内存使用情况

时间:2013-04-26 13:48:04

标签: java memory processbuilder


我尝试通过Java启动进程的内存使用 有人可以给我一个提示如何为Notepad.exe示例吗?

    // Memoryusage of the Java programm
    Runtime runtime=Runtime.getRuntime();
    total = runtime.totalMemory();
    System.out.println("System Memory: " + total);

    ProcessBuilder builder = new ProcessBuilder("notepad.exe");
    Process p = builder.start();

感谢您的帮助!

3 个答案:

答案 0 :(得分:1)

这篇文章有你的答案 Java ProcessBuilder memory

引用最佳答案:

  

新进程在启动它的Java进程之外运行。作为流程管理的一部分,操作系统管理向新进程分配内存。   Java类ProcessBuilder提供了一个用于启动和与新进程通信的接口,它在Java进程内部运行。

答案 1 :(得分:1)

您可以运行系统命令并将其输出转储到文件中。 然后,解析此文件以查找内存使用情况。

答案 2 :(得分:0)

此问题here包括

   ProcessBuilder pb = new ProcessBuilder("cmd.exe",  "/C", "tasklist /fi \"IMAGENAME eq notepad.exe\" /NH");

解决了我的问题。