【问题标题】:leaks inside thread螺纹内部泄漏
【发布时间】:2011-04-23 18:51:57
【问题描述】:

好的...大家好,我无法解决这个问题。我的代码中有大量泄漏,我不知道为什么。

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

代码有效,但 Instruments 说我在创建(alloc/init) diccionario、创建临时数组、创建 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;

}

【问题讨论】:

  • 你真的应该用英文写你的代码......
  • 只有几个变量名...不会有什么坏处的 ;)

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


【解决方案1】:

好的好的,谢谢所有尝试过的人。

问题是我没有释放实例变量,而 Instruments 指出了分配内存的泄漏点,而不是泄漏点......所以......我很困惑。

再次感谢

【讨论】:

    猜你喜欢
    • 2012-06-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-09
    • 1970-01-01
    相关资源
    最近更新 更多