线程内部泄漏

时间:2011-04-23 18:51:57

标签: objective-c memory-leaks nsmutablearray for-in-loop

好的......大家好,我还没能解决这个问题。我的代码中有大量泄漏,我无法弄清楚原因。

首先你应该知道,这段代码是在后台运行的,所以我为它创建了一个自动释放池。嗯,说实话,MBprogressHUD对我有用。

代码可以工作,但是Instruments说我在diccionario的创建(alloc / init),时间数组的创建,temporalMutable数组的创建等方面都有一些漏洞。几乎每一个做任何alloc / autorelease的代码都得到了泄漏。

有什么想法吗?

// Some more code at the beginning

NSMutableDictionary *diccionario=[[NSMutableDictionary alloc] init];    

for (Horas *hora in [dia oraciones]) {

    if ([diccionario objectForKey:[hora Tipo]]==nil)
    {
        NSArray *temporal=[NSArray arrayWithObjects:[hora Hora],[hora Texto], nil];
        NSMutableArray *temporalMutable=[NSMutableArray arrayWithObjects:temporal, nil];
        [diccionario setObject:temporalMutable forKey:[hora Tipo]];

    }
    else
    {           
        NSMutableArray *nuevo=[diccionario objectForKey:[hora Tipo]];
        NSArray *temporal=[NSArray arrayWithObjects:[hora Hora],[hora Texto], nil];
        [nuevo addObject:temporal];
        [diccionario setObject:nuevo
                        forKey:[hora Tipo]];
    }

}

MyClass *resultado=[[[MyClass alloc] initSinDescarga:fecha tituloDia:[dia titulo] celebracionDia:[dia celebracion] oracionesDia:diccionario] autorelease];
[diccionario release];
return resultado;

}

1 个答案:

答案 0 :(得分:0)

好的好,谢谢没有人试过看过它。

问题是我没有发布一个实例变量,而且Instruments指出了内存分配的泄漏而不是泄漏的地方......所以......我很困惑。

再次感谢