提问之星
2016-01-16 08:14
采纳率: 99.8%
浏览 1.8k
已采纳

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

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

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • CavanWang 2016-01-16 08:20
    已采纳

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

    点赞 打赏 评论
  • bdmh 2016-01-16 09:30

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

    点赞 打赏 评论
  • blownewbee 2016-01-16 13:03
     class A
    {
        int[] arr = new int[100000];
        public A a;
    }
    调用代码
    A a = new A();
    while (true)
    {
        A.a = new A();
            a = a.a;
    }
    
    点赞 打赏 评论
  • 把分全给哥 2016-01-16 13:14

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

    点赞 打赏 评论

相关推荐 更多相似问题