Looking for objective-c Keywords? Try Ask4Keywords

Objective-C Language Grand Central Dispatch (GCD) verwenden


Beispiel

GCD garantiert, dass Ihr Singleton nur einmal instanziiert wird, selbst wenn er von mehreren Threads aufgerufen wird. Fügen Sie dies in eine Klasse für eine Singleton-Instanz mit dem Namen shared .

+ (instancetype)shared {

    // Variable that will point to the singleton instance. The `static`
    // modifier makes it behave like a global variable: the value assigned
    // to it will "survive" the method call.
    static id _shared;

    static dispatch_once_t _onceToken;
    dispatch_once(&_onceToken, ^{

        // This block is only executed once, in a thread-safe way.
        // Create the instance and assign it to the static variable.
        _shared = [self new];
    });

    return _shared;
}