总:两次标记过程
一.第一次标记:可达性分析算法中,判定为不可达对象,标记一次
二.第二次标记
筛选条件:是否有必要执行finalize()方法,如果有就会被放进F-Queue队列里。想要在finalize()里拯救自己,就要与引用链上的对象关联
⚠️:finalize方法只能用一次,以为运行代价高已经被抛弃,可以用try-finally代替
总:两次标记过程
一.第一次标记:可达性分析算法中,判定为不可达对象,标记一次
二.第二次标记
筛选条件:是否有必要执行finalize()方法,如果有就会被放进F-Queue队列里。想要在finalize()里拯救自己,就要与引用链上的对象关联
⚠️:finalize方法只能用一次,以为运行代价高已经被抛弃,可以用try-finally代替