2008年10月8日

     摘要: 当一个对象实例不被强引用strongly reachable时,GC的某次运行就有可能扫描到该对象。这时GC会检查该对象是否softreference reachable,如果是,则尽可能放它一马,一笑而过,但如果放过去就会引起out of memory error,则就要处理该对象。处理过程首先要检查是否实现了finalize方法的对象,如果是则标记finalizable,并导致Finalizer系统线程(setDaemon(true),Thread.MAX_PRIORITY - 2)在后续巡检中对此对象调用finalize方法。执行完finalize方法后如果在此后某次的GC运行中再次被发现softreference reachable,则此时导致clear softreference,并释放内存,最后归到softreference-queue中。  阅读全文

posted @ 2008-11-18 14:50 英雄 阅读(644) | 评论 (0)编辑 收藏

posted @ 2008-11-14 15:15 英雄 阅读(2035) | 评论 (0)编辑 收藏

posted @ 2008-10-30 11:33 英雄 阅读(1989) | 评论 (0)编辑 收藏

posted @ 2008-10-29 16:51 英雄 阅读(1241) | 评论 (0)编辑 收藏

posted @ 2008-10-26 17:20 英雄 阅读(1340) | 评论 (0)编辑 收藏

posted @ 2008-10-21 11:08 英雄 阅读(1178) | 评论 (0)编辑 收藏

posted @ 2008-10-10 13:37 英雄 阅读(2251) | 评论 (0)编辑 收藏

posted @ 2008-10-08 15:07 英雄 阅读(2466) | 评论 (0)编辑 收藏