Singleton w Konstruktorze interfejsów z ARC

Moje pytanie jest bardzo podobne do tego:Używaj Singleton In Builder Builder?

Jedyną różnicą jest to, że używam ARC. Tak więc, jeśli jest uproszczony, mój singleton wygląda tak:

Manager.m

@implementation Manager

+ (instancetype)sharedManager {
    __strong static id sharedInstance = nil;
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{
        sharedInstance = [[self alloc] init];
    });
    return sharedInstance;
}

@end

Więc pytanie brzmi, czy możliwe jest przyjęcie tego, aby program budujący interfejs nadal korzystał z ARC?

Oczywiście rozumiem, że prostsze może być przepisanie tej klasy bez ARC, więc pytanie jest raczej akademickie. :)

questionAnswers(3)

yourAnswerToTheQuestion