Android 关键类(RefBase,sp, wp)

将相本无种,男儿当自强。这篇文章主要讲述Android 关键类(RefBase,sp, wp)相关的知识,希望能为你提供帮助。
RefBase:含有内部类weakRef_Impl(影子对象),影子对象中有两个引用计数变量(强引用计数,弱引用计数)
sp,构造的时候,强,弱引用计数均+1,析构的时候都-1
【Android 关键类(RefBase,sp, wp)】wp,构造的时候,弱引用+1,强引用不变,析构的时候弱引用-1,强引用不变
 
强引用计数=0:实际对象被delete
弱引用计数=0:影子对象被delete
 
延长对象生命:
enum {
OBJECT_LIFETIME_WEAK,
OBJECT_LIFETIME_FOREVER
};
OBJECT_LIFETIME_WEAK:强引用=0,弱引用!=0时不会被delete,强弱=0才会被delete
OBJECT_LIFETIME_FOREVER:彻底摆脱强弱引用的控制
轻量级的引用计数:
LightRefBase
只有强引用计数,
incstrong 时+1
decstrong时-1
强引用计数=0,delete this


    推荐阅读