一、内存溢出
它是指程序在申请内存时,没有足够的内存空间供其使用,抛出OutOfMemery。
比如申请了一盒8MB内存,但是当前内存可用空间只有5MB,那么就是内存溢出;
即:OutOfMemeryError,是指没有空闲内存,垃圾收集器回收后也不能提供更多的内存空间。
(简单理解就是系统可提供的内存空间不满足自己的内存需求)。
二、内存泄露
它是指程序运行后,没有释放所占用的内存空间(程序中有引用没有释放,不能被GC回收),一次内存泄露可能不会有很大的影响,但长时间的内存泄露,堆积到一定程度就会产生内存溢出。
(简单理解就是需要使用的内存大小超出了系统提供的内存大小)。
本文探讨了内存管理中的两个关键问题:内存溢出和内存泄露。内存溢出发生在程序请求的内存超过系统可用内存时,而内存泄露则是程序未释放不再使用的内存,导致资源逐渐耗尽。长期的内存泄露最终可能导致内存溢出。理解并有效管理这两者对于优化程序性能至关重要。
799

被折叠的 条评论
为什么被折叠?



