GC是一种守护线程,待用户线程结束后,jvm就自动关闭GC线程。与C++不同的是java中不需要编写内存回收和垃圾清理的代码,而在jvm中有一套自动管理内存和清理垃圾的回收机制——GC。
该机制是对jvm中的内存做出标记,确定哪些内存需要回收,根据一定的回收策略自动回收,永不停歇的保持JVM的内存空间,防止内存泄漏和溢出,举个例子就是将已使用的对象(在堆中)标记起来,然后将没有标记的对象清理掉。不懂的同学可以看我主页的那篇详细文章。
GC是一种守护线程,待用户线程结束后,jvm就自动关闭GC线程。与C++不同的是java中不需要编写内存回收和垃圾清理的代码,而在jvm中有一套自动管理内存和清理垃圾的回收机制——GC。
该机制是对jvm中的内存做出标记,确定哪些内存需要回收,根据一定的回收策略自动回收,永不停歇的保持JVM的内存空间,防止内存泄漏和溢出,举个例子就是将已使用的对象(在堆中)标记起来,然后将没有标记的对象清理掉。不懂的同学可以看我主页的那篇详细文章。