首页
Web开发
Windows程序
编程语言
数据库
移动开发
系统相关
微信
其他好文
会员
首页
>
移动开发
> 详细
iOS中的单例
时间:
2015-06-12 14:55:27
阅读:
144
评论:
0
收藏:
0
[点我收藏+]
标签:
ios
单例
dispatch_once_t
传值
单例传值
忙里偷闲整理了一下,最近经常使用单例来进行传值,也确实相对于其他方法,个人感觉单例传值还是比较好理解的,在程序运行过程中只创建一次,而且当你调用过后,每次拿到的对象都是起初你创建的那个,从而达到传值的目的
官方文档中的方法是:
static AccountManager *DefaultManager = nil;
+ (id)defaultManager {
if (!DefaultManager)
{
DefaultManager = [[self allocWithZone:NULL] init];
}
return DefaultManager;
}
iOS4后有一种方法是:
+ (id)sharedManager
{
static AccountManager *sharedAccountManagerInstance = nil;
static dispatch_once_t predicate;
dispatch_once(&predicate, ^{
sharedAccountManagerInstance = [[self alloc] init];
});
return sharedAccountManagerInstance;
}
这个方法有以下2个好处
1. 线程安全。
2. 兼容了ARC
我们看到,该方法在整个程序的声明周期中,仅执行一次某一个block对象。而且,有些我们需要在程序开头初始化的动作,如果为了保证其,仅执行一次,也可以放到这个dispatch_once来执行。
iOS中的单例
标签:
ios
单例
dispatch_once_t
传值
单例传值
原文地址:http://blog.csdn.net/lu_ca/article/details/46470769
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年07月29日 (22)
2021年07月28日 (40)
2021年07月27日 (32)
2021年07月26日 (79)
2021年07月23日 (29)
2021年07月22日 (30)
2021年07月21日 (42)
2021年07月20日 (16)
2021年07月19日 (90)
2021年07月16日 (35)
周排行
更多
关闭苹果IOS app自动更新
2021-07-29
开发一个即时通讯App
2021-07-28
iOS 跳转App Store进行评分
2021-07-26
诺基亚短信生成!太好玩了
2021-07-26
【Azure 应用服务】App Service 配置 Application Settings 访问Storage Account得到 could not be resolved: '*.file.core.windows.net'的报错。没有解析成对应中国区 Storage Account地址 *.file.core.chinacloudapi.cn
2021-07-26
Android系统编程入门系列之界面Activity响应丝滑的传统动画
2021-07-26
uniapp h5,app两端复制文本
2021-07-22
uni-app滚动视图容器(scroll-view)之监听上拉事件
2021-07-21
新型横向移动工具原理分析、代码分析、优缺点以及检测方案
2021-07-19
Android系统编程入门系列之界面Activity交互响应
2021-07-19
友情链接
兰亭集智
国之画
百度统计
站长统计
阿里云
chrome插件
新版天听网
关于我们
-
联系我们
-
留言反馈
© 2014
mamicode.com
版权所有 联系我们:gaon5@hotmail.com
迷上了代码!