你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發綜合 >> IOS常用設計模式——單例模式(IOS開發)

IOS常用設計模式——單例模式(IOS開發)

編輯:IOS開發綜合

IOS常用的設計模式包括:單例模式、委托模式、觀察者模式和MVC模式。

這裡主要講單例模式


單例模式

-問題: 主要解決應用中只有一個實例的問題(只需要某個類的實例)

-原理:一般會封裝一個靜態屬性,並提供靜態實例的創建方法

-應用:單例類

// Singleton.h
@interface Singleton : NSObject
+ (Singleton *)sharedManager;
@property (nonatomic, strong) NSString*  stingletonData;
@end

#import "Singleton.h"
@implementation Singleton
@synthesize SingletonData = _singletonData;
static Singleton *sharedManager = nil;
+ (Singleton *)sharedManager
{
    static dispatch_once_t once;
    static dispatch_once_t onceToken;
    dispatch_once(&once, ^{
        shardManager = [[self alloc] init];
    });
    return shardManager;
}
@end

包含了一個靜態變量singletonData, 類方法采用了GCD技術(基於C語言的多線程訪問技術),它的作用時在整個應用程序生命周期中只執行一次代碼塊({})。dispatch_once_t是GCD的結構體,使用時需要傳遞一個指針。

dispatch_once函數能保證函數只會被運行一次,還意味著運行是線程同步的。




  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved