【发布时间】:2011-03-27 15:57:21
【问题描述】:
我正在使用单例类在我的 iphone 应用程序中的视图之间共享数据。我的单例类包含我在 -init 方法中分配的字典:
- (id)init
{
if ( self = [super init] )
{
self.dataList = [[NSMutableDictionary alloc]init];
}
return self;
}
我在我的 dealloc 方法中释放它:
- (void)dealloc
{
[dataList release];
[super dealloc];
}
这个dataList是从服务器下载的,我在我的应用程序中多次这样做,所以我有一个自定义的setter方法来释放旧的,并保留新的:
-(void) setDataList:(NSMutableDictionary*)d
{
if( dataList !=nil){
[dataList release];
dataList = [d retain];
else
dataList = [d retain];
}
使用泄漏工具时,我得到了字典的内存泄漏。我想我正在正确地进行字典的分配和释放..是否因为单例的 dealloc 方法没有被调用而发生泄漏?
感谢您的帮助,
斯里坎特
【问题讨论】:
标签: iphone objective-c memory-leaks nsdictionary singleton