2 u011359326 u011359326 于 2016.01.16 16:14 提问

java中举个内存溢出的例子,以及如何解决这个问题的

java中举个内存溢出的例子,以及如何解决这个问题的
有实例代码就最好啦

4个回答

wangxugangzy05
wangxugangzy05   2016.01.16 16:20
已采纳

所谓内存溢出
就是当前内存的使用已经超过了当前内存的供给,虽然有垃圾回收, 但是如果单位时间内你申请的频率太高,导致来不及及时释放,也会耗尽内存。
比如你虚拟机限制最大1G的内存 你不断用循环往容器(list, vector之类)添加对象,最后不会溢出吗?内存难道没有上限吗?就算你调用了垃圾回收函数请求
也解决不了 都是设计本身或者系统吞吐本身的限制

caozhy
caozhy   Ds   Rxr 2016.01.16 21:03
 class A
{
    int[] arr = new int[100000];
    public A a;
}
调用代码
A a = new A();
while (true)
{
    A.a = new A();
        a = a.a;
}
enpterexpress
enpterexpress   2016.01.16 21:14

单位时间申请内存太高,内存量不够

bdmh
bdmh   Ds   Rxr 2016.01.16 17:30

检查是否有死循环,大数据频繁创建而且不释放

Csdn user default icon
上传中...
上传图片
插入图片