`dispatch_once`创建的单例是否已被释放?如果是这样,该如何应对呢?

时间:2014-05-30 22:57:16

标签: objective-c grand-central-dispatch

正如discussion中所述,dispatch_once在构建单例时非常有用。但是,dispatch_once创建的实例是否已被释放且dispatch_once无法创建该实例,因为它只执行一次?

如果是这样,处理它的最佳做法是什么?

1 个答案:

答案 0 :(得分:1)

是。

首先,最佳做法通常是首先避免使用单身人士。

您也可以使用@synchronized(self)模式代替dispatch_once模式,以保证一次只存在一个对象,但如果它被解除分配,则可以重新实例化它原因。

您还可以在dealloc中重置dispatch_once变量,我认为