Java heap space 解决方法(转) - 51CTO博客

文章推薦指數: 80 %
投票人數:10人

在网上一查可能是JAVA的堆栈设置太小的原因。

跟据网上的答案大致有这两种解决方法: 1、设置环境变量 set JAVA_OPTS= -Xms32m -Xmx512m 可以 ... Javaheapspace解决方法(转) 关注 flameover 赞 收藏 评论 分享 Javaheapspace解决方法(转) 转载 flameover 2016-10-2815:17:17 ©著作权 文章标签 Javaheapspace 文章分类 Java 编程语言 Javaheapspace解决方法(转)https://blog.51cto.com/flameover/1866771 因为程序要从数据读取近10W行记录处理,当读到9W的时候就出现java.lang.OutOfMemoryError:Javaheapspace这样的错误。

在网上一查可能是JAVA的堆栈设置太小的原因。

跟据网上的答案大致有这两种解决方法:1、设置环境变量setJAVA_OPTS=-Xms32m-Xmx512m可以根据自己机器的内存进行更改,但本人测试这种方法并没有解决问题。

可能是还有哪里需要设置。

2、java-Xms32m-Xmx800mclassName就是在执行JAVA类文件时加上这个参数,其中className是需要执行的确类名。

(包括包名)这个解决问题了。

而且执行的速度比没有设置的时候快很多。

如果在测试的时候可能会用Eclispe这时候就需要在Eclipse->run-arguments中的VMarguments中输入-Xms32m-Xmx800m这个参数就可以了。

java.lang.OutOfMemoryError:Javaheapspace ===================================================使用Java程序从数据库中查询大量的数据时出现异常:java.lang.OutOfMemoryError:Javaheapspace在JVM中如果98%的时间是用于GC且可用的Heapsize不足2%的时候将抛出此异常信息。

JVM堆的设置是指java程序运行过程中JVM可以调配使用的内存空间的设置.JVM在启动的时候会自动设置Heapsize的值,其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)是物理内存的1/4。

可以利用JVM提供的-Xmn-Xms-Xmx等选项可进行设置。

例如:java-jar-Xmn16m-Xms64m-Xmx128mMyApp.jar如果HeapSize设置偏小,除了这些异常信息外,还会发现程序的响应速度变慢了。

GC占用了更多的时间,而应用分配到的执行时间较少。

HeapSize最大不要超过可用物理内存的80%,一般的要将-Xms和-Xmx选项设置为相同,而-Xmn为1/4的-Xmx值。

Heapsize的-Xms-Xmn设置不要超出物理内存的大小。

否则会提示“ErroroccurredduringinitializationofVMCouldnotreserveenoughspaceforobjectheap”。

==========================================================经过一个晚上的努力终于完成了一个文件替换指定字符串的程序,但是由于我要替换的全站程序html文件太多,所以eclipse下边老是在一个目录结束后报出java.lang.OutOfMemoryError:Javaheapspace的异常,然后就崩溃了。

我一想肯定是频繁操作造成来不及回收,于是在每个循环之后加上一个Thread.sleep(1000),发现还是到那个目录下就死掉,于是把1000改成5000,还是到那里死掉,我想可能不是来不及回收这么简单,或许sun的JVM里边刚好对于这种情况不释放也有可能。

接着我又把启动的参数添上一个-Xmx256M,这回就可以了。

想一想,还是对于垃圾回收的原理不太了解,就在网上查了一下,发现了几篇不错的文章。

http://java.ccidnet.com/art/3539/20060314/476073_1.htmlhttp://www.pconline.com.cn/pcedu/empolder/gj/java/0509/701281.html还有:Java堆的管理—垃圾回收提到一下几点,很不错,或许可以作为写程序时候的准则:  (1)不要试图去假定垃圾收集发生的时间,这一切都是未知的。

比如,方法中的一个临时对象在方法调用完毕后就变成了无用对象,这个时候它的内存就可以被释放。

  (2)Java中提供了一些和垃圾收集打交道的类,而且提供了一种强行执行垃圾收集的方法--调用System.gc(),但这同样是个不确定的方法。

Java中并不保证每次调用该方法就一定能够启动垃圾收集,它只不过会向JVM发出这样一个申请,到底是否真正执行垃圾收集,一切都是个未知数。

  (3)挑选适合自己的垃圾收集器。

一般来说,如果系统没有特殊和苛刻的性能要求,可以采用JVM的缺省选项。

否则可以考虑使用有针对性的垃圾收集器,比如增量收集器就比较适合实时性要求较高的系统之中。

系统具有较高的配置,有比较多的闲置资源,可以考虑使用并行标记/清除收集器。

  (4)关键的也是难把握的问题是内存泄漏。

良好的编程习惯和严谨的编程态度永远是最重要的,不要让自己的一个小错误导致内存出现大漏洞。

  (5)尽早释放无用对象的引用。

大多数程序员在使用临时变量的时候,都是让引用变量在退出活动域(scope)后,自动设置为null,暗示垃圾收集器来收集该对象,还必须注意该引用的对象是否被监听,如果有,则要去掉监听器,然后再赋空值。

就是说,对于频繁申请内存和释放内存的操作,还是自己控制一下比较好,但是System.gc()的方法不一定适用,最好使用finallize强制执行或者写自己的finallize方法。

================================================tomcat遇到TOMCAT出错:java.lang.OutOfMemoryError:Javaheapspace,于是查了资料,找到了解决方法:IfJavarunsoutofmemory,thefollowingerroroccurs:Exceptioninthread"main"java.lang.OutOfMemoryError:JavaheapspaceJavaheapsizecanbeincreasedasfollows:java-Xms -XmxDefaultsare:java-Xms32m-Xmx128m如果你用win/tomcat/bin/catalina.bat加上下面的命令:setJAVA_OPTS=-Xms32m-Xmx256m如果你用unix/linux/tomcat/bin/catalina.sh加上下面的命令:JAVA_OPTS="-Xms32m-Xmx256m" 赞 收藏 评论 分享 举报 上一篇:学习三大境界! 下一篇:oracle创建用户、表空间,并赋权 举报文章 请选择举报类型 内容侵权 涉嫌营销 内容抄袭 违法信息 其他 具体原因 包含不真实信息 涉及个人隐私 原文链接(必填) 补充说明 0/200 上传截图 格式支持JPEG/PNG/JPG,图片不超过1.9M 取消 确认 已经收到您得举报信息,我们会尽快审核 提问和评论都可以,用心的回复会被更多人看到 评论 发布评论 全部评论 (0) 最热 最新 相关文章 java.lang.OutOfMemoryError:Javaheapspace java.lang.OutOfMemoryError:Javaheapspace原因:内存溢出,内存一直申请一直占用,无法回收解决方法:定时重启下服务, java 解决方法 内存溢出 java.lang.OutOfMemoryError:Javaheapspace解决方法转测试可用 这个问题的根源是jvm虚拟机的默认Heap大小是64M,可以通过设置其最大和最小值来实现.设置的方法主要是几个. java 物理内存 tomcat java程序 jar Causedby:java.lang.OutOfMemoryError:Javaheapspace Causedby:java.lang.OutOfMemoryError:Javaheapspaceorg.apache.jasper.JasperException:javax.servlet.ServletException:java.lang.OutOfMemoryError:Javaheapspace2009-4-214:32:37org.apache.cat java myeclipse jvm 数据库 Java java.lang.OutOfMemoryError:Javaheapspace内在溢出 这种问题,在网上查询了下,有各种各样的说法.在这里,我只说明下我自己实践出来的问题及解决方法 java eclipse tomcat jar 解决方法 java.lang.OutOfMemoryError:Javaheapspace错误及处理办法(收集整理、转) 以下是从网上找到的关于堆空间溢出的错误解决办法:java.lang.OutOfMemoryError:Javaheapspace使用Java程序从数据库中查询大量的数据时出现异常:java.lang.OutOfMemoryError:Javaheapspace java.lang.OutOfMemor 内存不足java.lang.OutOfMemoryError:Javaheapspace java.lang.OutOfMemoryError:Javaheapspace解决方案[转]一直都知道可以设置jvmheap大小,一直用eclipse写/调试java程序。

一直用命令行orconsole加参数跑程序。

现象:在eclipse的配置文件eclipse.ini中设置-vm... 职场 休闲 内存不足 space java.lang java.lang.OutOfMemoryError:PermGenspacejava.lang.OutOfMemoryError:Javaheapspace 今天tomcat出现了java代码Exceptioninthread"DefaultQuartzScheduler_Worker-3"java.lang.OutOfMemoryError:PermGenspace nbsp; 职场 休闲 Javaheapspace Javaheapspace解决方法(转) 因为程序要从数据读取近10W行记录处理,当读到9W的时候就出现java.lang.OutOfMemoryError:Javaheapspace这样的错误。

在网上一查可能是JAVA的堆栈设置太小的原因。

跟据网上的答案大致有这两种解决方法:1、设置... java 垃圾收集 物理内存 tomcat html Javaheapspace解决方法 因为程序要从数据读取近10W行记录处理,当读到9W的时候就出现java.lang.OutOfMemoryError:Javaheapspace这样的错误。

在网上一查可能是JAVA的堆栈设置太小的原因。

跟据网上的答案大致有这两种解决方法:1、设置... java 数据读取 类文件 eclipse 包名 java.lang.OutOfMemoryError:Javaheapspace解决方法 解决方法这个问题的根源是jvm虚拟机的默认Heap大小是64M,可以通过设置其最大和最小值来实现.设置的方法主要是几个. 1.可以在windows 更改系统环境变量加上JAVA_OPTS=-Xms64m Xmx512m 2,如果用 java.lang.OutOfMemor java.lang.OutOfMemoryError:Javaheapspace解决方法 java.lang.OutOfMemoryError:Javaheapspace解决方法这个问题的根源是jvm虚拟机的默认Heap大小是64M,可以通过设置其最大和最小值来实现.设置的方法主要是几个.1.可以在windows更改系统环境变量加上JAVA_OPTS=-... java 方法 解决 Java 休闲 javaheapspace解决方法和JVM参数设置 在JVM中如果98%的时间是用于GC(GarbageCollection)且可用的Heapsize不足2%的时候将抛出异常信息,java.lang.OutOfMemoryError:Javaheapspace。

所以产生这个异样的原因通常有两种:1.程序中出现了死循环2.程序... java tomcat eclipse jvm内存 物理内存 flameover 关注 私信 近期评论 Wcp知识管理系统部署文档 请问WCP评论知识时一点提交就反馈“该页面无法找到,请还回首页”这个情况如何处理 归零! 一切将从这里开始。

近期文章 1.用xmanager登陆Linux图形界面 2.entos6.5_x64tomcat7+jdk1.7 3.oracle创建用户、表空间,并赋权 4.Javaheapspace解决方法(转) 5.学习三大境界! 七日热门 Java-introductionofJava Java入门_Java概述_Java的特点 JAVA基础——JavaSynchronized Java-InterviewforJava01 javaJAVA_HOME Java-Java反射 【java】java枚举模板 Java:Java快速入门 Java-Java语言 java基础--java语法 相关标签 全部 eclipseheapspace elasticsearchjavaheapspace hadoopheapspace hivejavaheapspace ideaheapspace ideajavaheapspace idea解决heapspace javaheapspace javaheapspaceat javaheapspacetrycatch 签到领勋章 返回顶部 51CTO博客 首页 关注 热榜 订阅专栏 学堂 精培 开源社区 CTO训练营 51CTO 班级博客 登录注册 手机随时阅读 新人专享大礼包¥24 写文章 搜索历史 清空 热门搜索 查看【 】的结果 Copyright©2005-202251CTO.COM 版权所有京ICP证060544号 关于我们 官方博客 意见反馈 了解我们 全部文章 在线客服 网站地图 热门标签 友情链接 开源基础软件社区 51CTO学堂 51CTO



請為這篇文章評分?