gpt4 book ai didi

java - 如何计算java应用程序可以使用的最大内存

转载 作者:行者123 更新时间:2023-12-04 06:49:57 25 4
gpt4 key购买 nike

我有一个最大堆为 1024M 的 Java 应用程序,它的永久空间为 256M。
是否保证此应用永远不会使用超过 1280M(1024+256)?

堆栈内存是否也来自上面的堆大小还是额外的内存消耗?

如果 Java 应用程序使用消耗内存的 native 代码,那么这些内存来自哪里呢?堆/烫发/更多内存?

我很想知道 java 如何使用内存。
请给出意见。
任何可以提供清晰图片的链接也欢迎

谢谢你

最佳答案

一个正在执行的 Java 应用程序使用比主堆和永久代空间更多的内存。例如:

  • 有保存java的可执行代码的内存。程序和任何由可执行文件动态链接的共享库。
  • 有用于表示由 java 创建的堆外数据结构、缓冲区等的内存。可执行文件,通过其 native 库或应用程序的 native 库。
  • 有用于表示 Java 线程堆栈的内存。
  • 可能还有更多。

  • 没有推荐的方法来预测 Java 应用程序的总内存使用量。即使测量它也很棘手,尤其是当您考虑到某些内存可能与其他 JVM 甚至其他非 Java 应用程序共享时。

    关于java - 如何计算java应用程序可以使用的最大内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3270686/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com