gpt4 book ai didi

java - Java运行时本身占用的堆空间

转载 作者:行者123 更新时间:2023-11-30 06:04:23 24 4
gpt4 key购买 nike

我想就我对 Java 堆空间的基本疑问征求您的意见。

我想知道分配的对象或Java运行时本身获取的堆空间或总体Java内存空间的百分比。

同样的问题也适用于 java servlet 或 Java EE 容器,如 Tomcat 或任何其他应用程序服务器。

当我运行一个最小的 JSP 页面时,我检查了 tomcat 的一些基本堆转储。我可以看到它已经占用了 17 MB,其中我看到一些为 Catalina 类加载器类分配的对象。我使用Eclipse内存分析器工具进行了分析。

当我运行独立的 Java 程序时,我看到同样的情况,该程序有一些由类加载器加载的 char[] 。

当我运行更复杂的场景时,可能会分配更多对象。

我可以使用一些VM参数或其他东西以某种方式影响java运行时类或对象分配的基本加载吗?

最佳答案

使用 Java 9 和 Project Jigsaw JVM 已模块化,现在可以构建减少的 JVM 运行时。您可以使用 jlink 工具使用基本 Java 模块和代码构建自定义 JRE shown in this tutorial .

作为副作用,这清除了 Java 内部类中演变的奇怪依赖关系。这应该会导致更快的启动,因为在启动期间将加载更少的类,直到您声明导入

关于java - Java运行时本身占用的堆空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49655708/

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