gpt4 book ai didi

Java 进程在主要 GC 期间死亡 "Out of swap space",机器上剩余大量内存

转载 作者:行者123 更新时间:2023-12-02 08:55:21 26 4
gpt4 key购买 nike

所以我正在使用 VisualVM 监视一个进程,然后我单击“执行 GC”,该进程随后因错误而终止:

#
# A fatal error has been detected by the Java Runtime Environment:
#
# java.lang.OutOfMemoryError: requested 4088 bytes for char in /BUILD_AREA/jdk6_24/hotspot/src/share/vm/utilities/stack.inline.hpp. Out of swap space?
#
# Internal Error (allocation.inline.hpp:39), pid=1148, tid=1082808672
# Error: char in /BUILD_AREA/jdk6_24/hotspot/src/share/vm/utilities/stack.inline.hpp
#
# JRE version: 6.0_24-b07
# Java VM: Java HotSpot(TM) 64-Bit Server VM (19.1-b02 mixed mode linux-amd64 )
# An error report file with more information is saved as:
# /net/bsrs78.pit.twosigma.com/d-1/local/eaMemory2-yao-bsrs78.pit.twosigma.com-db8rsnyc9-head-20110622-130721-31729-0/hs_err_pid1148.log
#
# If you would like to submit a bug report, please visit:
# http://java.sun.com/webapps/bugreport/crash.jsp
#

但在我这样做之前不久,我检查了机器,似乎还有足够的内存(数字以 MB 为单位显示):

free -m
total used free shared buffers cached
Mem: 96869 60999 35869 0 363 4590
-/+ buffers/cache: 56045 40823
Swap: 10243 40 10203

在我看来,GC 不太可能占用所有内存。

这是一个问题,因为如果我让程序继续运行,在某些时候它会最大化其分配的堆,然后尝试进行主要 GC 并以同样的方式终止。不过 Minor GC 看起来还不错。

那么这是怎么回事呢?为什么它会因交换空间消息而死掉?如果我可以提供更多信息或进一步诊断此问题,请告诉我。我将非常感谢所有帮助!

谢谢!

编辑1:我已将错误日志上传到 http://www.mediafire.com/?kw0meup9mw5de9c ,而且就其值(value)而言,它使用 PS Scavenge 进行次要 GC,使用 PS MarkSweep 进行主要 GC。

Edit2:另外,这个问题已经发生过多次,总是在一次主要的垃圾收集过程中死掉——无论是我通过 VisualVM 引起的,还是耗尽堆并由 jvm 本身触发的。

最佳答案

你看过this question/answer吗? ?看来这是VM的配置问题。

另一个例子可以找到here 。通过减少分配给虚拟机的内存量,报告并修复了相同的错误。

我无法下载您的错误日志,但我建议尝试减少内存设置,看看是否有帮助。

关于Java 进程在主要 GC 期间死亡 "Out of swap space",机器上剩余大量内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6445619/

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