Java:JVM 内存消耗

标签 java

我正在研究 Java、参数 -Xms 和类 Runtime。

我发现 JVM 分配了大约 15% 的可用内存 - 无论它是多少。

Runtime rt Runtime.getRuntime ();
long total = rt.totalMemory ()
long free = rt.freeMemory ();

如果我用参数启动程序就是这种情况

-Xms4000m 

以及

-Xms90m

我在totalMemory的结果中看到了Xms的差异。

我理解从一开始就分配更多以避免昂贵的重新分配的策略。

但我不知道这是否到位以及如何测量程序的实际内存消耗。

最佳答案

如果您使用的是 Oracle JVM,则可以使用命令行工具 jmap 或 GUI 工具 jvisualvm 来测量 Java 程序的堆消耗。

关于Java:JVM 内存消耗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52421202/

相关文章:

java - 如何从 FragmentActivity 向 Fragment 传递参数

java - 为什么当我滚动 RecyclerView 时我的 TextView 文本大小会改变? (使用自动调整 TextView)

java - 导致堆空间用尽的可能原因是什么?是否有避免它的最佳实践?

java - 自*第一次*插入以来,Java中是否有一个过期映射在一段时间后使元素过期?

java - 如何使用 get() 方法访问 arrayList 中的元素?

java - 如何使用网关模式?

java - Java 安全管理器会降低性能吗?

java - 每次从 Git pull 后都必须添加 Selenium jar

java - 转换或方法调用哪个更有效/更便宜?

Java:使绘图程序全屏运行