【发布时间】:2011-12-30 20:44:31
【问题描述】:
我想将一些大量数据写入文件。数据包含在对象中。对象被实现为可序列化的。 问题是当我尝试使用 ObjectOutputStream 的 writeObject 将其写入文件时,它会给出 StackOverflowError,因为对象的大小很大。
我只需要保存对象,以便我可以再次打开和使用它,更改一些值,然后再次保存到磁盘。
目标文件是使用 Neuroph 框架创建的 NeuralNetwork,所以我不喜欢查看它的大代码并一一挑选数据并将其序列化。
请有人建议一种方法来切片对象(或一些缓冲效果)并至少保存。我认为这种事情可以解决问题。
谢谢。 :)
【问题讨论】:
-
试试JVM的
-Xss选项。 -
感谢大家的回复,我增加了堆栈大小,这有点帮助。但有时它仍然会失败。我发现当我增加 A Level 中的节点数量时文件大小会大大增加,而不是当我添加新级别时。可能是neuroph的问题。无论如何,我将要从 Matlab 开始。谢谢大家.. :)
标签: java serialization object stack-overflow buffering