在Scala或Java中,如何获取应用程序当前占用的RAM量?

时间:2010-09-05 01:50:52

标签: java memory scala jvm jmx

NetBeans IDE有一个任务栏标记,显示当前正在运行的实例分配和使用的RAM量。如何在我用Scala编写的应用程序中获取此数据?如果在Scala中没有特殊功能,我可以使用Java。

2 个答案:

答案 0 :(得分:11)

private val runtime = Runtime.getRuntime()
import runtime.{ totalMemory, freeMemory, maxMemory }

 System.out.println("New session, \ 
    total memory = %s, max memory = %s, free memory = %s".format(
        totalMemory, maxMemory, freeMemory))

刚刚从http://harrah.github.com/browse/samples/compiler/scala/tools/nsc/CompileServer.scala.html

复制

答案 1 :(得分:3)

您可以使用java.lang.Runtime类中的totalMemorymaxMemory方法,也可以使用MemoryMXBean