问题标签 [heap-size]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Windows 7 或 Linux 的 Java 内存
我已经在我的 Windows 上安装了 6GB 内存和 5GB 内存可用空间,当我运行一个指定 Java 堆空间的 Java 程序时 -Xmx2048m 它工作正常。我的问题是,如果我的 Linux 机器上有这个怎么办
猫 /proc/meminfo
如果我用这个内存在 Linux 中运行带有 -Xmx2048m 的 Java 程序会发生什么?
java - Linux 机器中的 Java 堆大小
我可以-Xmx1792m
在 Linux 盒子里做吗
如果我有这样的
java - 如何设置 JEE 应用程序的堆大小?
我正在使用 jsp、java 和 servlet 开发一个网络分类网站。
我的要求是:
- 图片
- 2GB 网页大小
- 数据库
- 具有功能齐全的分类网站的类别列表。
到目前为止,我的网络主机提供商给了我 128mb 的堆大小。
如何计算我的网站堆大小需求?告诉我 128mb 堆大小是否能满足我最初的要求。
android-studio - Android工作室,最大堆大小无效
清除项目并构建成功后。我在Android studio中运行Android项目,出现如下错误,谁能给我解决问题的方法,谢谢!:
我的安卓工作室配置(studio.exe.vmoptions):
java - 设置 Java 堆空间 Netbeans
我正在尝试运行涉及大 3D 矩阵分配的图像处理代码。正如您可能已经猜到的那样,我得到了臭名昭著的堆空间错误:
现在,我在 64 位 Windows 8.1 上运行 netbeans 8.0.2 64 位,内存为 16 GB。我已经尝试过创建一个 JAVA_OPTS 环境变量以及修改 etc 文件夹中的 netbeans.conf 文件,但我可以设置的最大值是 Xmx1050m ......我需要更多。更多...是否有可能让 jvm 分配更多(例如 8-10 gigs)?
java - 使用的堆正常运行时降低堆大小意味着什么
我正在开发一个部署在 Glassfish 4 中的大型应用程序。我有一项工作是下载文件并将它们作为字节 [] 存储在数据库中。有很多小文件(如 5 Mb)。我遇到内存不足错误,因此我尝试使用较少数量的文件再次启动该作业,并开始使用 jVisualVM 对其进行监视并注意到这一点:
1:30 到 1:40 之间是正常的应用程序运行,我们可以看到一切看起来都符合预期。但是,当我在 1:40 之后开始工作时,使用的堆通常会被垃圾收集,所以会有很多尖峰......但是,堆大小 越来越小。我想这是内存不足错误的原因。但我不知道这意味着什么——降低堆大小是什么意思?
android - Android - 是否可以指定最小堆大小要求?
是否可以(可能在应用程序的清单文件或 Google Play 列表中)指定设备运行应用程序所需的最小 VM 堆大小?
我已android:largeHeap="true"
在<application>
清单的标签中设置,但我希望我的应用程序对无法提供至少 64MB 堆大小的设备不可用。
这个问题的提示是,我们收到了来自用户的差评(由于 OOM),堆大小为 32MB,并且(直到我们希望我们的应用程序的堆使用量低于该级别)我们希望将我们的应用程序限制在设备上64MB+ 堆。
我认为这种方法可以,因为类似地,我们的应用程序对于低于 API 14 的设备已经不可用。
注意 - 我在文档中查看了清单的应用程序标记,唯一提到堆的是前面提到的 largeHeap 属性。
java - 为什么启用 G1 垃圾收集器时最大堆大小不正确?
当我在 java 应用程序中启用 G1 时,使用-Xmx=1024m -XX:+UseG1GC
. 并使用jvisualvm
命令检查最大堆大小。最大堆大小为 2GB 而不是 1GB。
有人知道为什么吗?
java - HDFS - 加载大量文件
出于测试目的,我正在尝试将大量小文件加载到 HDFS 中。实际上,我们谈论 100 万(1'000'000)个大小从 1KB 到 100KB 的文件。我在一个文件夹中的 Linux 系统上使用 R-Script 生成了这些文件。每个文件都有一个信息结构,其中包含带有产品信息的标题和带有数字信息的不同数量的列。
问题是当我尝试使用以下命令将这些本地文件上传到 HDFS 时:
然后我得到以下 Java-Heap-Size 错误之一:
线程“主”java.lang.OutOfMemoryError 中的异常:Java 堆空间
线程“主”java.lang.OutOfMemoryError 中的异常:超出 GC 开销限制
我使用 Java-Heap-Size 约 5 GB 的 Cloudera CDH5 发行版。除了增加这个 Java-Heap-Size 之外,还有其他方法吗?将如此大量的数据加载到 HDFS 中也许是一种更好的方法?
我非常感谢每一个有用的评论!
java - 运行在 Jenkins 下运行 JVM 的批处理文件时的堆大小
我有一个 Jenkins 构建,构建的一个步骤是调用 bat 文件的 Windows 批处理命令步骤。
批处理文件包含以下创建 JVM 的命令
如果我如上所述使用 -Xmx4g ,则 Jenkins 中的命令会失败
但是,如果我在命令提示符下在从属机器上在 Jenkins 之外运行相同的批处理文件,我完全没有问题。
如果我在 Jenkins 下使用 -Xmx2g 运行命令,那么它会耗尽内存,因为该命令的堆大小太小,但至少它在没有无效最大堆大小的情况下运行。
如何防止 Jenkins 限制从该构建步骤运行的 JVM?
我尝试了以下方法,但尚未找到允许此构建步骤完成的解决方案:
- 更改 Jenkins 服务器上的堆大小(尽管它不是有问题的服务器端 JVM)
- 更改分配给运行构建的从属设备的堆大小(使用 Jenkins 服务器中节点配置页面上的 JVM 选项)
还有其他建议吗?