使用GCD的dispatch_once建立单例

 

以前一篇《Objective-C的单例模式(singleton)ios

http://arthurchen.blog.51cto.com/2483760/642536ide

介绍了建立单例的方式,不事后来发现其实在ios 4.0后有更加简单的方式。spa

就是使用GCD的功能blog

代码以下:it

 + (instantClass *)sharedClient {io

    static instantClass *_sharedClient = nil;class

    static dispatch_once_t onceToken;margin

    dispatch_once(&onceToken, ^{static

        _sharedClient = [[instantClass alloc] init];di

    });

    

    return _sharedClient;

}