检测单个对象之前已初始化

时间:2014-11-19 01:04:46

标签: ios objective-c

有没有办法告诉之前调用[MyClass sharedInstance]并且不是nil? 我需要判断另一个类是否已初始化单例而不实际初始化单例对象。

2 个答案:

答案 0 :(得分:0)

最佳选择是添加一个类方法以及返回sharedInstance的{​​{1}}方法,并指示单例是否存在。

答案 1 :(得分:0)

面对这样的情况,你可能会遇到设计错误。我认为你需要按顺序初始化多个单例类。在那种情况下,我创建了一个上下文类。

[Before]

ClassA(Singleton)
ClassB(Singleton)
ClassC(Singleton)

[After]

MyAppContext(Singleton)
  ClassA
  ClassB
  ClassC

MyAppContext#sharedInstance方法按您想要的顺序分配对象。单例对象不应该与其他单例对象有依赖关系。