IOS --- 单例模式
dispatch_once
dispatch_once函数是保证在应用程序执行中只执行一次指定处理的API。下面这种经常出现的用来进行初始化的源代码可通过dispatch_once函数简化:
static int initialized = NO;
if (initalized == NO){
/*
*初始化
*/
initialized = YES;
}
如果使用dispatch_once函数,则源代码改为:
static dispatch_once_t pred;
dispatch_once (&pred, ^{
/*
*初始化
*/
});
源代码看起来没有太大的变化。但是通过dispatch_once函数,该源代码即使在多线程环境下执行,也可保证百分之百安全。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。