Java内存占用

标签 java performance memory

我制作了一个服务器端应用程序,它使用 18mb 的非堆和大约 6mbs 的头部,最多 30mbs。我使用 -Xms 和 Xmx 设置堆的最大值,问题是当我在 ubuntu 服务器上运行程序时,它需要大约 170mbs,而不是 18+30 或至少 100Mbs 的最大值。有人知道如何让虚拟机只获得 100MB 吗?

最佳答案

JVM 使用堆、线程堆栈和共享库等其他内存。共享库可能相对较大,但除非实际使用,否则它们不会使用实际内存。如果您运行 JVM,它们会在它们之间共享,但您无法在进程信息中看到这一点。

在现代 PC 中,1 GB 内存的成本约为 100 美元,因此减少每一个 MB 的内存并不像以前那样重要。

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

相关文章:

java - java内存分配

java - OOP 设计——什么时候有一个共同的基类 [缺陷设计?]

java - 模拟电话号码的正则表达式

java - 如何将javafx中TextArea的isUndoable属性设置为true?

java - 如何考虑垃圾收集器测试内存使用情况?

CPU 和 GPU 之间共享的 iOS 内存以及这对读取意味着什么

java - 在哪个监视器面板中运行我的 Swing GUI?

performance - 通过 SQLDeveloper 与应用程序实现的 Oracle 性能

javascript - 使用 Javascript 为样式切换器添加样式表的最佳方法?

android - 选择 Android Webview 中使用的动画以获得高性能