首页 > 技术文章 > 单例

louyizhidu 2015-11-13 14:22 原文

#import "NSObjectGCDAsyncSocket.h"

@implementation NSObjectGCDAsyncSocket
{
    GCDAsyncSocket* socket;
}
+(NSObjectGCDAsyncSocket *)defaultSocket
{
    //socket只会实例化一次
    static NSObjectGCDAsyncSocket* socket=nil;
    //保证线程安全,defaultSocket只执行一次
    static dispatch_once_t once;
    dispatch_once(&once, ^
    {
        socket=[[NSObjectGCDAsyncSocket alloc] init];
    });
    return socket;
}

推荐阅读