如何检查 Java 程序使用的内存?\
javaobject oriented programmingprogramming更新于 2025/6/21 14:36:17
对于 长时间运行的 Java 代码,由于大量使用动态内存,我们可能会因堆空间内存不足而导致内存不足错误。
在下面的程序中,我们可以测试程序使用的可用 Java 堆空间。如果堆空间使用率超过 90%,则显式调用垃圾收集器。System.gc() 调用会阻塞调用线程,直到垃圾收集器完成。因此,此代码可以在单独的线程中执行。
示例
public class GCTest {
public void runGC() {
Runtime runtime = Runtime.getRuntime();
long memoryMax = runtime.maxMemory();
long memoryUsed = runtime.totalMemory() - runtime.freeMemory();
double memoryUsedPercent = (memoryUsed * 100.0) / memoryMax;
System.out.println("memoryUsedPercent: " + memoryUsedPercent);
if (memoryUsedPercent > 90.0)
System.gc();
}
public static void main(String args[]) {
GCTest test = new GCTest();
test.runGC();
}
}
输出
memoryUsedPercent: 0.07187129404943532
相关文章
有用资源
java 参考教程 - 该教程包含有关 java 的更多信息:https://www.cainiaomax.com/java/

