IOS 中兩種單例模式的寫法實例詳解
更新時間:2017年06月13日 15:21:16 投稿:lqh
這篇文章主要介紹了IOS 中兩種單例模式的寫法實例詳解的相關(guān)資料,需要的朋友可以參考下
iOS的單例模式有兩種官方寫法,如下:
(1)不使用GCD
#import "ServiceManager.h"
static ServiceManager *defaultManager;
@implementation ServiceManager
+(ServiceManager *)defaultManager{
if(!defaultManager)
defaultManager=[[self allocWithZone:NULL] init];
return defaultManager;
}
@end
(2)使用GCD
#import "ServiceManager.h"
@implementation ServiceManager
+(ServiceManager *)sharedManager{
static dispatch_once_t predicate;
static ServiceManager * sharedManager;
dispatch_once(&predicate, ^{
sharedManager=[[ServiceManager alloc] init];
});
return sharedManager;
}
@end
dispatch_once這個函數(shù),它可以保證整個應(yīng)用程序生命周期中某段代碼只被執(zhí)行一次!
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
iOS中的UISearchBar搜索框組件基礎(chǔ)使用指南
iOS開發(fā)套件中自帶的UISearchBar搜索框我們平時經(jīng)??梢杂玫?我們可以在默認(rèn)的基礎(chǔ)上修改文字顏色、背景顏色和背景圖片等,這里我們稍微總結(jié)一下iOS中的UISearchBar搜索框組件基礎(chǔ)使用指南.2016-05-05
IOS開發(fā)之tableView點擊行跳轉(zhuǎn)并帶有“顯示”更多功能
這篇文章給大家介紹通過點擊城市中的tableView跳轉(zhuǎn)到旅游景點的tableView,下面會有“顯示”更多的功能,代碼簡單易懂,對ios點擊tableview跳轉(zhuǎn)相關(guān)知識感興趣的朋友一起學(xué)習(xí)吧2016-03-03

