wudi7965 2010-06-30 15:32
浏览 791
已采纳

两个对象互相引用,能否被GC回收?

Java中,如果对象A引用了对象B,对象B又直接或间接引用了对象A。(有一种情况是Hibernate中的主从对象双向关联)

那么,在没有其它对这两个对象的引用的情况下,这两个对象能否被GC回收?也就是说能否会产生内存泄露?

换个角度的问法就是:Java的GC是如何判断某个对象有没有被别的对象引用的?

  • 写回答

2条回答 默认 最新

  • myali88 2010-06-30 16:27
    关注

    现在的GC都采用分代收集的方式,不同的区采用不同的算法,大致有:复制,标记-清扫,标记-压缩,标记-清扫-压缩等。你可以参看:[url]http://speed847.iteye.com/blog/373278[/url]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?