Java中OutOfMemoryError(内存溢出)的情况及解决办法

java.lang.OutOfMemoryError: Java heap space

        // TODO Auto-generated method stub
        Vector v = new Vector(10);
        for (int i = 1; i<1000000000; i++)
        {Object o = new Object();
        v.add(o);
        o = null;
        }
    

因为每一次生成一个新的对象,都会放入到堆区(heap)里面,所以堆区的空间肯定就不够了。

那就只能去修改循环的次数

时间: 2024-11-03 21:13:31

Java中OutOfMemoryError(内存溢出)的情况及解决办法的相关文章

Java中OutOfMemoryError的2种情况及解决办法

在解决java内存溢出问题之前,需要对jvm(java虚拟机)的内存管理有一定的认识.jvm管理的内存大致包括三种不同类型的内存区域:Permanent Generation space(永久保存区域).Heap space(堆区域).Java Stacks(Java栈).其中永久保存区域主要存放Class(类)和Meta的信息,Class第一次被Load的时候被放入PermGen space区域,Class需要存储的内容主要包括方法和静态属性.堆区域用来存放Class的实例(即对象),对象需要

Java中OutOfMemoryError(内存溢出)的三种情况及解决办法

相信有一定java开发经验的人或多或少都会遇到OutOfMemoryError的问题,这个问题曾困扰了我很长时间,随着解决各类问题经验的积累以及对问题根源的探索,终于有了一个比较深入的认识. 在解决java内存溢出问题之前,需要对jvm(java虚拟机)的内存管理有一定的认识.jvm管理的内存大致包括三种不同类型的内存区域:Permanent Generation space(永久保存区域).Heap space(堆区域).Java Stacks(Java栈).其中永久保存区域主要存放Class

(转)Java中OutOfMemoryError(内存溢出)的三种情况及解决办法

面试时面试关问了有关内存溢出的出现情况和解决方法,网上百度了下,在此感谢 作者liqianbnu总结. 相信有一定java开发经验的人或多或少都会遇到OutOfMemoryError的问题,这个问题曾困扰了我很长时间,随着解决各类问题经验的积累以及对问题根源的探索,终于有了一个比较深入的认识.在解决java内存溢出问题之前,需要对jvm(java虚拟机)的内存管理有一定的认识.jvm管理的内存大致包括三种不同类型的内存区域:Permanent Generation space(永久保存区域).H

Java中OutOfMemoryError(内存溢出)的

修改Tomcat 文件 catalina.bat rem Guess CATALINA_HOME if not defined set JAVA_OPTS=-Xms32m -Xmx512m   增加这个 set "CURRENT_DIR=%cd%"

myeclipse内存溢出的N个解决办法

MyEclipse内存溢出解决方法 1.修改eclipse.ini 在Myeclipse安装目录下G:\MyEclipse8.5\Genuitec\MyEclipse 8.5有一个myeclipse.ini配置文件,设置如下: -vmargs-Xmx512m-XX:MaxPermSize=256m-XX:ReservedCodeCacheSize=64m2.设置Default VM Arguments 在myEclipse中,打开Windows-> Preferences->Java->

java中出现内存溢出的几种情况

情况一:java.lang.OutOfMemoryError: Java heap space 原因:java堆内存不足,可能是真的不足,也可能是程序中有死循环 方案:1.调整JVM参数-Xms2048m -Xmx2048m 2.定位死循环代码 情况二:java.lang.OutOfMemoryError: GC overhead limit exceeded 原因:JDK6新增错误类型,当GC为释放很小空间占用大量时间时抛出:一般是因为堆太小,导致异常的原因,没有足够的内存 方案:1.查看系统

Android加载大量图片内存溢出的三种解决办法

方法一: 在从网络或本地加载图片的时候,只加载缩略图. 这个方法的确能够少占用不少内存,可是它的致命的缺点就是,因为加载的是缩略图,所以图片失真比较严重,对于对图片质量要求很高的应用,可以采用下面的方法. 方法二: 运用JAVA的软引用,进行图片缓存,将经常需要加载的图片,存放在缓存里,避免反复加载. 方法三: 及时销毁不再使用的Bitmap对象. if (bitmap != null && b!itmap.isRecycled()){ bitmap.recycle(); bitmap =

java中JScrollPane不显示水平滚动条的解决办法

在JPanel中添加了表格,表格中对东西太多,需要水平滚动条滑动才能够完全找到所有数据,如果没有水平滚动条的话,数据堆积在一起,无法分开 做法是: 第一步:先将表格自动调整的状态给关闭掉:table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); 第二步:设置JScrollPane的水平滚动条的方式,有三种,设js是一个JScrollPane的对象 js.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_

java虚拟机涉及内存溢出

Java语言写的代码是.java文件,它会被特定程序编译(javac.exe,它会被Eclipse之类的IDE调用)成字节码(bytecode),字节码不能直接在CPU上运行,需要另一个程序读取并执行,这个部件就是java虚拟机,它像机器一样运行编译好的java字节码,就像机器直接执行机器码一样……java虚拟机的外部接口在windows下主要是jvm.dll这个文件…… 就是能让.class文件执行的工具 虚拟机参数配置 http://blog.163.com/magicc_love/blog