gpt4 book ai didi

objective-c - 什么是tiny_free_list_add_ptr?

转载 作者:行者123 更新时间:2023-12-03 17:45:39 26 4
gpt4 key购买 nike

我已经广泛搜索了它的含义。我的猜测是我不知何故有一个损坏的堆栈。我明白了

微小_空闲_列表_添加_ptr

在第 16 次调用时显示:

NSDateFormatter *theFormatter = [[NSDateFormatter alloc] init];

问题的原因是什么?我认为我的堆栈已损坏,这是正确的吗?

    - (NSString *)formatDate:(NSString *)uglyDate withFormat:(NSString *)theFormat {

NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
NSDateFormatter *theFormatter = [[NSDateFormatter alloc] init];
[theFormatter setDateFormat:theFormat];

NSDate *realDateUgly = [NSDate dateWithNaturalLanguageString:uglyDate];
if (realDateUgly == nil)
realDateUgly = [NSDate dateWithString:uglyDate];

NSString *prettyDate = [[NSString alloc] initWithString:[theFormatter stringFromDate:realDateUgly]];

[pool drain];
[pool release];
[theFormatter release];
return prettyDate;

}

最佳答案

  1. 我怀疑你这里需要一个游泳池。
  2. 您过度释放了池。 drain 与非 GC 代码中的 release 相同。 (release 在 GC 代码中同样是多余的,因为这样它就没有操作了。)
  3. 您正在泄露 prettyDate。你应该自动释放它。 (当然,这不适用于它周围的池,这是杀死该池的一个很好的理由。)

查看 Memory Management Programming Guide for Cocoa 后并解决您的内存管理问题,您应该会发现问题已解决,或者至少能够更好地追踪它。

如果修复内存管理后问题仍然存在,请编辑您的问题以包含完整的堆栈跟踪。

关于objective-c - 什么是tiny_free_list_add_ptr?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1140947/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com