内存溢出和内存泄漏的区别、产生原因以及解决方案

1)内存溢出:是指程序在申请内存时,没有足够的内存空间供其使用 。
a.内存中加载的数据量过于庞大 。
b.集合类中有对象的引用,使用完后未清空,使得JVM不能回收 。
c.代码中存在死循环或循环产生过多重复对象实体 。
d.启动参数内存值设定过小 。
2)内存泄漏:是指程序在申请内存后,无法释放已申请的内存空间 。
a. 内存泄漏也许是因为活动已经被使用完毕,但是仍然在其他地方被引用,导致无法对其进行回收 。
b. 资源性对象在不使用的时候 , 应该调用它的close()函数将其关闭掉 。
c. 集合容器中的内存泄露,需要将集合里的东西clear , 置为null,再退出程序 。
d. WebView造成的泄露,当我们不使用WebView对象时,应该调用它的destory()函数来销毁它,并释放其占用的内存 。
【内存溢出和内存泄漏的区别、产生原因以及解决方案】以上就是朝夕生活(www.30zx.com)关于“内存溢出和内存泄漏的区别、产生原因以及解决方案”的详细内容 , 希望对大家有所帮助!

猜你喜欢