Java内存泄漏与内存溢出
2017-01-10 17:58
218 查看
简介:
首先这两个不是同一个概念,内存溢出不一定是因为内存泄漏造成的,内存泄漏也不一定就会造成内存溢出。
内存溢出是指当前jvm分配的内存不满足Java应用实际的需求,这样在运行过程中就会造成内存溢出,内存溢出的本质是内存不够用;
内存泄漏指的是本来不需要的内存始终不能被回收,最后导致越来越多的内存被占用,这里要注意一点:操作系统在内存的分配上有一个虚拟内存的概念,虚拟内存就是作为开发人员不用关心实际物理内存的多少,操作系统会结合硬盘与物理内存建立一个比较大的虚拟内存,当应用占用内存超过物理内存的限制的时候就会将一部分物理内存中的数据放到逻辑内存(用硬盘虚拟出的一小块内存),所以表面上用的是内存,实际上已经
首先这两个不是同一个概念,内存溢出不一定是因为内存泄漏造成的,内存泄漏也不一定就会造成内存溢出。
内存溢出是指当前jvm分配的内存不满足Java应用实际的需求,这样在运行过程中就会造成内存溢出,内存溢出的本质是内存不够用;
内存泄漏指的是本来不需要的内存始终不能被回收,最后导致越来越多的内存被占用,这里要注意一点:操作系统在内存的分配上有一个虚拟内存的概念,虚拟内存就是作为开发人员不用关心实际物理内存的多少,操作系统会结合硬盘与物理内存建立一个比较大的虚拟内存,当应用占用内存超过物理内存的限制的时候就会将一部分物理内存中的数据放到逻辑内存(用硬盘虚拟出的一小块内存),所以表面上用的是内存,实际上已经
相关文章推荐
- Java代理模式(动态与静态)
- JAVA实现各种排序算法----更新中----
- myeclipse8.5配置maven5.0.3
- 集合框架笔记
- spring mvc -文件下载
- java卡应用安装过程
- Java 8 时间日期库的20个使用示例
- spring @value无法注入
- Java并发之CountDownLatch、CyclicBarrier和Semaphore
- java web路径和spring读取配置文件
- Java多线程之使用wait和notify模拟生产者消费者模式
- [z]cxf生成javaclient
- java jpg图片 Base64字符串互转
- Java访问权限修饰符详解
- 对于Java监听器的理解
- java插件开发
- maven于eclipse集成-2
- SSH学习之Spring问题总结
- Reflection vs Encapsulation – Stand Off in the Java Module System(5)
- Java资源绑定(ResourceBundle)示例