cescofry cescofry - 1 year ago 81
iOS Question

How do I implement an Objective-C singleton that is compatible with ARC?

How do I convert (or create) a singleton class that compiles and behaves correctly when using automatic reference counting (ARC) in Xcode 4.2?

Answer Source

In exactly the same way that you (should) have been doing it already:

+ (instancetype)sharedInstance
    static MyClass *sharedInstance = nil;
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{
        sharedInstance = [[MyClass alloc] init];
        // Do any other initialisation stuff here
    return sharedInstance;
Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download