android RefBase
来源:互联网 发布:蓝月传奇龙魂数据w707 编辑:程序博客网 时间:2024/05/21 08:40
RefBase & sp & wp 实现了类似于智能指针的工作,从而实现了垃圾自动回收的机制。代码见
frameworks/base/include/utils/RefBase.h
1.sp并不是所常见的smart pointer,而是strong pointer。
构造函数:
template<typename T>
sp<T>::sp(T* other)
: m_ptr(other)
{
if (other) other->incStrong(this);
}
析构函数:
template<typename T>
sp<T>::~sp()
{
if (m_ptr) m_ptr->decStrong(this);
}
incStrong()会在构造或复制后,增加强引用1次。而每次delete一个sp对象时,sp对象的强引用就会减少1次。
当对象的强引用次数为0的时候这个对象就会被自动释放掉。
2.wp
wp即weak pointer,实现和sp类似,createWeak()及decWeak()类似于incStrong()及decStrong(),进行弱应用的计数。同时,wp和sp都提供了进行双向转换的方法。
- android RefBase
- [Android] Class RefBase
- android refbase类
- RefBase
- RefBase
- Refbase
- Android RefBase类(sp,wp)
- Android RefBase类(sp,wp)
- ANDROID -- sp,wp,RefBase 使用
- Android sp,wp,RefBase浅析
- Android 智能指针详解 -- RefBase
- Android中的RefBase,sp和wp
- Android - 引用计数(sp、wp、Refbase)
- Android指针管理:RefBase,SP,WP
- android 中的的 sp/wp/RefBase
- Android指针管理:RefBase,SP,WP
- Android指针管理:RefBase,SP,WP
- Android指针管理:RefBase,SP,WP
- 蓝鸟介绍
- SQL Server 返回最后插入记录的id值
- 利用OleDb对象,将数据库中全部表转换成XML文件
- javascript如何定义类
- jquery ajax的简单应用
- android RefBase
- 玩转Google开源C++单元测试框架Google Test系列(gtest)之四 - 参数化
- C#高速并发程序之-----volatile关键字
- erlang 游戏服务器开发
- 走进空档年
- snmp相关组件的介绍
- 关于C#语言中的问号的一个需要注意的用法
- jdbc+oracle
- Howto: Linux Add User To Group (tips)