本文出自 “熔 岩” 博客,转载请与作者联系!:http://lavasoft.blog.51cto.com/62575/112126/
Java的垃圾回收总结
内存是稀缺的资源,哪怕内存一块钱一条!如果在编程中使用不当,再大的内存也会耗光。
一、认识Java的自动垃圾回收
垃圾回收是Java语言的一大特性,方便了编程,是以消耗性能为代价的。而垃圾在这里只无用的对象。而C++是需要程序员自己写析构函数来释放内存的,麻烦,也有可能忘记而导致内存泄露。
Java语言对内存的分配管理是通过JVM内部机制决定的。程序员可以不关心其处理。
二、垃圾回收的原理和意义
Java虚拟机中有个称之为垃圾回收器的东西,实际上这个东西也许真正不存在,或者是已经集成到JVM中了,但这无关紧要,我们仍然可以称为为垃圾回收器。
垃圾回收器的作用是查找和回收(清理)无用的对象。以便让JVM更有效的使用内存。
垃圾回收器的运行时间是不确定的,由JVM决定,在运行时是间歇执行的。虽然可以通过System.gc()来强制回收垃圾,但是这个命令下达后无法保证JVM会立即响应执行,但经验表明,下达命令后,会在短期内执行你的请求。JVM通常会感到内存紧缺时候去执行垃圾回收操作。
垃圾回收过于频繁会导致性能下降,过于稀疏会导致内存紧缺。这个JVM会将其控制到最好&#