我已经下载了一个图书馆关闭github上,并已经注意到,在图书馆的主要单身有在该位的代码可能泄漏:Singleton设计潜在的泄漏
+(DDGameKitHelper*) sharedGameKitHelper
{
@synchronized(self)
{
if (instanceOfGameKitHelper == nil)
{
[[DDGameKitHelper alloc] init];
}
return instanceOfGameKitHelper;
}
return nil;
}
现在很明显有没有发布或autorelease任何地方,所以我必须这样做,但如何以及以什么方式正确?我已经查看了Internet上的各种单例设计模式,并且他们只是将instanceOfGameKitHelper分配给alloc和init行。
无论如何我会妥善解决这个问题?
谢谢!
我喜欢它,简单而简洁,它使警告无声无息。加上它更容易阅读。 –
@iBradApps正如在另一个答案中指出的那样,警告是因为您从未将对象分配给您的变量。 – rmaddy
好吧,我明白,我upvoted两个答案BC他们都帮我解决了这个问题。 –