可以把GC想象成一个描述程序对象之间互相引用的算法。如果在程序中一个子对象被其父对象引用(在原生代码中使用的是指针),那他们的关系图如下:当GC对一个进程的内存进行扫描,它会尝试寻找没有父亲的对象。如果找到,就对他们进行回收以便释放内存给其他需求使用。当然,其实大部分的对象都有父对象,因此GC需要确切的知道哪些对象是重要的父对象,这些对象是你的程序中真正正在使用的。用GC的术语来说,这些对象叫做“根”。下面的例子展示了两种不同的情况:在上面的图片中,Parent2没有根对象,因此GC可以
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号