java - 查找分配给进程的虚拟内存量

标签 java memory memory-management sigar

有没有办法找出分配给特定进程的虚拟内存总量?我有一个程序,并且还放入了一个性能跟踪器,它将监视进程正在使用多少内存以及剩余多少内存可供使用。

为此,我需要知道分配给进程的内存量。有没有办法在Java中做到这一点?我在 Windows 7 上运行。

此外,我目前一直在使用 Sigar 类来监视其他内存统计信息。 sigar 是否有特定的类/函数可以找到我正在寻找的内容?

最佳答案

您可以使用Visualvm .

在您的代码中计算使用的内存:-

Runtime runtime = Runtime.getRuntime(); // Get the Java runtime
long memory = runtime.totalMemory() - runtime.freeMemory(); // Calculate the used memory

关于java - 查找分配给进程的虚拟内存量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26593537/

相关文章:

java - BlueJ 开关盒

java - Java正则表达式中的非法转义字符错误

memory - 取消注册 M3 型号

Linux Sync() 等效的 Windows API

java - 如何从 Netbeans 导出创建的 derby 数据库?

java - 如何只允许传递特定类型的格式化字符串?

c++ - Auto_ptr 到外部 C 结构

java - 有没有办法优化我生成文件并将其输出为 .zip 在 java servlet 中的方式?

java - 动态内存处理 Java 与 C++

python - Ray:在Python脚本中多次调用tune.run()时的内存管理