




全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
java.lang.OutOfMemoryError: Java heap space首先检查程序有没有限入死循环这个问题主要还是由这个问题 java.lang.OutOfMemoryError: Java heap space 引起的。第一次出现这样的的问题以后,引发了其他的问题。在网上一查可能是JAVA的堆栈设置太小的原因。大致有这两种解决方法:1、设置环境变量set JAVA_OPTS= -Xms32m -Xmx512m可以根据自己机器的内存进行更改。2、java -Xms32m -Xmx800m className就是在执行JAVA类文件时加上这个参数,其中className是需要执行的确类名。(包括包名)这个解决问题了。而且执行的速度比没有设置的时候快很多。如果在测试的时候可能会用Eclispe 这时候就需要在Eclipse-运行-运行(N)-(x)=自变量中的VM arguments 中输入-Xms32m -Xmx800m这个参数就可以了。TOMCAT出错:java.lang.OutOfMemoryError: Java heap spaceIf Java runs out of memory, the following error occurs:Exception in thread main java.lang.OutOfMemoryError: Java heap spaceJava heap size can be increased as follows:java -Xms -XmxDefaults are:java -Xms32m -Xmx128m如果你用win/tomcat/bin/catalina.bat 加上下面的命令:set JAVA_OPTS=-Xms32m -Xmx256m如果你用unix/linux/tomcat/bin/catalina.sh 加上下面的命令:JAVA_OPTS=-Xms32m -Xmx256mjava.lang.OutOfMemoryError: Java heap space 使用Java程序从数据库中查询大量的数据时出现异常:java.lang.OutOfMemoryError: Java heap space 在JVM中如果98的时间是用于GC且可用的 Heap size 不足2的时候将抛出此异常信息。JVM堆的设置是指java程序运行过程中JVM可以调配使用的内存空间的设置.JVM在启动的时候会自动设置Heap size的值,其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)是物理内存的1/4。可以利用JVM提供的-Xmn -Xms -Xmx等选项可进行设置。例如:java -jar -Xmn16m -Xms64m -Xmx128m MyApp.jar如果Heap Size设置偏小,除了这些异常信息外,还会发现程序的响应速度变慢了。GC占用了更多的时间,而应用分配到的执行时间较少。Heap Size 最大不要超过可用物理内存的80,一般的要将-Xms和-Xmx选项设置为相同,而-Xmn为1/4的-Xmx值。Heap size的 -Xms -Xmn 设置不要超出物理内存的大小。否则会提示“Error occurred during initialization of VM Could not reserve enough space for object heap”。还有:Java堆的管理垃圾回收提到一下几点,很不错,或许可以作为写程序时候的准则:(1)不要试图去假定垃圾收集发生的时间,这一切都是未知的。比如,方法中的一个临时对象在方法调用完毕后就变成了无用对象,这个时候它的内存就可以被释放。(2)Java中提供了一些和垃圾收集打交道的类,而且提供了一种强行执行垃圾收集的方法-调用System.gc(),但这同样是个不确定的方法。Java 中并不保证每次调用该方法就一定能够启动垃圾收集,它只不过会向JVM发出这样一个申请,到底是否真正执行垃圾收集,一切都是个未知数。(3)挑选适合自己的垃圾收集器。一般来说,如果系统没有特殊和苛刻的性能要求,可以采用JVM的缺省选项。否则可以考虑使用有针对性的垃圾收集器,比如增量收集器就比较适合实时性要求较高的系统之中。系统具有较高的配置,有比较多的闲置资源,可以考虑使用并行标记/清除收集器。(4)关键的也是难把握的问题是内存泄漏。良好的编程习惯和严谨的编程态度永远是最重要的,不要让自己的一个小错误导致内存出现大漏洞。(5)尽早释放无用对象的引用。大多数程序员在使用临时变量的时候,都是让引用变量在退出活动域(scope)后,自动设置为null,暗示垃圾收集器来收集该对象,还必须注意该引用的对象是否被监听,如果有,则要去掉监听,然后再赋空值。就是说,对于频繁申请内存和释放内存的操作,还是自己控制一下比较好,但是System.gc()的方法不一定适用,最好使用finallize强制执行或者写自己的finallize方法Eclipse中出现java.lang.OutOfMemoryError: Java heap space错误2007-06-12 11:53java.lang.OutOfMemoryError: Java heap space错误在tomcat in的catalina.bat里加 set JAVA_OPTS=-Xms256m -Xmx512m -Djava.awt.headless=true 256和512分别是MIN和MAX内存 在ec
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025版停薪留职期间员工权益保护合同范本
- 2025年高新技术产业园区承包经营权永久转让合同
- 2025年度通讯行业人才培养合作合同样本
- 2025年度智能照明灯具系统集成合同范本集
- 2025年度生态农业项目复杂运营适用合同
- 2025版在线教育平台外教直播课程聘用与教学合同
- 2025版危险品道路运输合同规范文本
- 2025版淘宝平台电商虚拟货币交易合同
- 2025版试用员工劳动合同及薪资福利标准
- 2025年车辆抵押借款担保与绿色金融创新合作协议
- 2025年驾驶证资格考试科目一必刷题库及答案(共560题)
- 青岛科学四年级上册《风的形成》课件
- 2025年交规考试宝典
- 风力发电项目工程承包合同
- 科技创新小企业财务管理制度
- 2024版中式烧烤加盟经营合作协议书3篇
- 1例胃癌术后并发肠梗阻患者的疑难病例讨论
- 生物安全管理手册
- 美团配送站长述职报告
- 《刺络放血疗法》课件
- 沪教深圳版八年级英语下册单词表
评论
0/150
提交评论