我试图使用 ObjectOutputStream 将其中一个类对象保存到文件中。当我的对象随着大小增长时,我会收到以下错误,否则一切都很好。
线程“Thread-2”中的异常 java.lang.OutOfMemoryError:Java 堆空间 在 java.io.ObjectOutputStream$HandleTable.growEntries(ObjectOutputStream.java:2308)
我的代码如下所示:
try {
FileOutputStream fout = new FileOutputStream("D:\\out.dat");
ObjectOutputStream os = new ObjectOutputStream(fout);
os.writeObject(this.obj); // Writing object to a File
os.close();
fout.close();
os=null;
fout=null;
} catch (Exception e) {
e.printStackTrace();
}
请建议我如何解决这个问题?有任何替代方法可以实现相同的目标吗?
最佳答案
使用 -Xms1024M -Xmx1024M
选项启动您的程序。您通常不会收到该错误,除非该对象真的非常大和/或您的计算机的 RAM 量很小。
关于java - 线程 "Thread-2"java.lang.OutOfMemoryError : Java heap space 中的异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11280626/