java 。内存不足

标签 java matlab memory

我在 MATLAB 上运行了一个脚本,运行良好,当我想再次运行该脚本时,MATLAB 陷入忙碌状态!我在我工作的目录中发现了一个文件“hs_err_pid1124”,其中包含以下内容:

A fatal error has been detected by the Java Runtime Environment:
#
# java.lang.OutOfMemoryError: requested 16384000 bytes for GrET in  
C:\BUILD_AREA\jdk6_17\hotspot\src\share\vm\utilities\growableArray.cpp. Out of swap  
space?
#
#  Internal Error (allocation.inline.hpp:39), pid=1124, tid=1380
#  Error: GrET in 
C:\BUILD_AREA\jdk6_17\hotspot\src\share\vm\utilities\growableArray.cpp
#
# JRE version: 6.0_17-b04
# Java VM: Java HotSpot(TM) Client VM (14.3-b01 mixed mode windows-x86 )

. 
.
.

我的电脑内存是4G,我增加了系统交换空间,但问题仍然没有解决!!

谢谢

最佳答案

这里最有可能的嫌疑是你的代码。我希望你做一些奇怪的事情(打开一个文件,然后不关闭它?!将每个文件读入一个不断增长的变量?!)。

但是,如果没有代码,就很难诊断。

您可以执行以下操作:

  1. 评估可见内存使用情况:在中间的某个位置放置一个断点,并检查最大变量的大小。还要检查总大小。 (如果错误是常规的 matlab 错误,您还可以使用dbstop if error)
  2. 说服 matlab 释放内存:如果第 1 步没有产生任何结果,您实际上可能做对了,但也许 matlab 没有正确管理其内存。这种情况很少见,但在多次重复简单任务时有时会发生。在这种情况下,您可以将 pack 命令放置在代码中的某个位置。也许会有帮助。

关于 java 。内存不足,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24641026/

相关文章:

c++ - 无效的 MEX 文件 libmkl_rt.so : cannot open

具有 matlab 等效函数的 Java 库

objective-c - 将实例 ID 打印到 NSLog?

python - 如何避免内存错误

java - 工作场所与字符串相关的编程问题

java - 在Java中序列化键值对的HashMap并将其转换为格式化字符串

java - org.mockito.Mockito.times(1) 有方便的方法吗?

java - 单击按钮时如何更改按钮颜色?

python - 读取 .m 文件并且 Python 不断读取 .m 文件中的字符作为一行?

c++ - 使用 __declspec 的内存填充问题