使用PersistenceManager.loadObjectFromFile从光盘加载.gapp文件时,我得到了“线程中的异常”主“java.lang.OutOfMemoryError:Java堆空间”错误。 我将堆大小增加到最大值2048M,并解决了问题。 在加载大量.gapp文件时,是否有更好的替代方法来解决此问题。
答案 0 :(得分:0)
我认为不是,如果您使用的是默认的垃圾收集器。它的工作需要 max heap size 参数。请注意,确实需要内存。该错误表明您的门应用程序(加载的gapp文件)没有足够的内存。
您可以做两件事:
找到仍然有效的最大堆大小参数的较低值。
减少所需的内存量。例如,通过在门应用程序之间共享一些大对象(例如地名词典列表)。可以使用Factory.duplicate(Resource)
完成。参见例如幻灯片来自Developers GATE Course。