【问题标题】:xCode Memory Leak, despite releasing object?xCode 内存泄漏,尽管释放对象?
【发布时间】:2012-01-25 19:38:27
【问题描述】:

下面是一个简单的函数,它接受一个日期作为字符串,将其转换为适当的日期格式并将其作为 NSDate 返回

-(NSDate*) dateLabelSet:(NSString*)strDate
{   
    NSDate *activeDate;
    NSDateFormatter *format;

    format = [[NSDateFormatter alloc] init];
    [format setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

    activeDate = [format dateFromString:strDate];

    [format release];

    return activeDate;
}

当我通过仪器中的泄漏运行它时,它是说格式是泄漏的。该功能似乎相对简单......在本地声明格式,利用它,并在返回日期之前释放它。

大家有什么建议吗?

非常感谢!

【问题讨论】:

  • 我听说如果您设置语言环境,某些版本的 NSDateFormatter 会在内部泄漏。由于 DateFormater 语言环境“feechure”,您应该始终设置语言环境。
  • 我在上面的代码中添加了 [format setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"] autorelease]] 仍然得到泄漏。

标签: iphone objective-c xcode memory-leaks nsdateformatter


【解决方案1】:

我认为这是 NSDateFormatter 类中的内部内存泄漏,就像在 NSString 类中的 [NSString stringByAppending...] 方法中一样。我们对此无能为力。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-01-30
    • 1970-01-01
    • 2012-06-08
    • 2011-04-27
    • 2021-05-21
    • 1970-01-01
    • 1970-01-01
    • 2011-01-27
    相关资源
    最近更新 更多