【发布时间】:2011-09-27 08:07:51
【问题描述】:
我遇到了内存泄漏警告消息,如下面的屏幕截图所示。
我需要一些关于如何解决此内存泄漏的建议。我可以在方法结束时做一个[自我释放]吗?
【问题讨论】:
标签: objective-c ios memory-management memory-leaks
我遇到了内存泄漏警告消息,如下面的屏幕截图所示。
我需要一些关于如何解决此内存泄漏的建议。我可以在方法结束时做一个[自我释放]吗?
【问题讨论】:
标签: objective-c ios memory-management memory-leaks
+(UserStockInfo*)shareduserStockInfo{
@synchronized([UserStockInfo class])
{
if(! _sharedUserStockInfo)
_sharedUserStockInfo= [[self alloc]init];
return _sharedUserStockInfo;
}
return nil;
}
【讨论】:
您没有将返回的对象分配给_sharedUserStockInfo,因此您正在丢失引用和泄漏。在那个_sharedUserStockInfo 将保持nil 并且方法也将返回nil。
【讨论】:
[[self alloc] init] 分配给_sharedUserStockInfo。
[[self alloc] init];换成_sharedUserStockInfo = [[self alloc] init];。你不需要在方法结束时release它。