我从 github 下载了一个库,并注意到在该库的主单例中,这段代码可能存在泄漏:
+(DDGameKitHelper*) sharedGameKitHelper
{
@synchronized(self)
{
if (instanceOfGameKitHelper == nil)
{
[[DDGameKitHelper alloc] init];
}
return instanceOfGameKitHelper;
}
return nil;
}
现在显然在任何地方都没有发布或自动发布,所以我必须这样做,但是如何以及以何种方式正确?我查看了 Internet 上的各种 Singleton 设计模式,他们只是将 instanceOfGameKitHelper 分配给 alloc 和 init 行。
无论如何,我将如何正确解决这个问题?
谢谢!