当我加载一个相当大的文件时,我的 Java 程序崩溃(在 Eclipse 中)。
我已经运行了 VisualVM,并且我的 CPU 在崩溃之前似乎达到了 20% 的峰值使用率,而且我的堆大小似乎并不太高。崩溃时运行的线程数约为 20。
我确实收到错误消息 - 但不是每次发生崩溃时。我收到的两条错误消息是:
[错误太多,中止]
和
# Java 运行时环境检测到一个致命错误:
#
# SIGSEGV (0xb) at pc=0x00007f096d096942, pid=12102, tid=139678234564352
#
# JRE 版本:6.0_24-b24
# Java VM:OpenJDK 64-Bit Server VM(20.0-b12混合模式linux-amd64压缩oops)
# 衍生产品:IcedTea6 1.11.5
# 发行版:Ubuntu 12.04 LTS,包 6b24-1.11.5-0ubuntu1~12.04.1
# 有问题的框架:
# J java.util.HashMap.put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
我找到了与第二个警告有关的线程,但它似乎表明存在硬件问题。我相信我的错误出在软件中,因为它似乎只发生在较大输入文件的特定实例中。
任何帮助表示赞赏。