Objective-C Singleton

Quer uma instância compartilhada de uma classe sem colocar tudo no delegado do aplicativo? Use uma classe única!

O método a seguir retorna uma instância singleton compartilhada da classe em questão. Lógica de criação adicional pode ser adicionada, mas certifique-se de colocá-la dentro do dispatch_oncebloco.

+ (__class__ *)sharedInstance {
static __class__ *_obj = nil;
static dispatch_once_t onceQueue;

dispatch_once
(&onceQueue, ^{
_obj
= [[__class__ alloc] init];
});

return _obj;
}

Substitua __class__pelo nome real da classe.