现在的位置: 首页 > 综合 > 正文

看代码的过程中经常看到promote()调用,简单记录refbase

2013年02月23日 ⁄ 综合 ⁄ 共 330字 ⁄ 字号 评论关闭

看refbase源码:

RefBase类定义中的函数:

incStrong()增加一个弱引用,一个强引用

decStrong 对应的,减少一个弱引用,一个强引用

forceIncStrong 增加一个弱引用,一个强引用

getStrongCount获取强引用个数

weakref_impl* const mRefs; 这里有个成员变量。

以上大部分都是强引用

 接下来定义了一个内部类weakref_type这个大部分都是针对弱引用

incWeak 增加弱引用计数

decWeak 减少弱引用计数

attemptIncStrong 由弱引用转成强引用

attemptIncWeak  获取一个弱引用

promote是wp的一个函数,里面调用了attemptIncStrong ,返回了一个对象的强引用


 

抱歉!评论已关闭.