我正在使用eclipse从oracle数据库中使用poi创建excel文件。如果数据集很小,没有问题。但如果它是巨大的,我们有以下例外。
线程“main”java.lang.outofmemoryerror中出现异常:java堆空间
My heap setting is. -Xms512m -Xmx1024m
如果我把最大尺寸增加到2048米
Could not create Java Virtual Machine.
错误。谢谢
我正在使用eclipse从oracle数据库中使用poi创建excel文件。如果数据集很小,没有问题。但如果它是巨大的,我们有以下例外。
线程“main”java.lang.outofmemoryerror中出现异常:java堆空间
My heap setting is. -Xms512m -Xmx1024m
如果我把最大尺寸增加到2048米
Could not create Java Virtual Machine.
错误。谢谢
2条答案
按热度按时间mtb9vblg1#
我是根据学校的指导方针解决的。
vdgimpew2#
我想你需要检查一下你的操作系统的容量(是32位系统还是64位系统)
据我所知:
预期只有一大块内存的32位JVM不能使用超过4GB的内存(因为这是32位的限制,也适用于指针)。这包括sun和ibm的实现。我不知道例如jrockit或其他的32位实现是否有大内存选项。
如果您希望达到这个限制,那么应该强烈考虑启动一个并行跟踪来验证生产环境的64位jvm,以便在32位环境崩溃时做好准备。否则你将不得不在压力下做那项工作,这从来都不是好事。