gpt4 book ai didi

iphone - 显示 NSPlaceholderstring 泄漏的仪器

转载 作者:行者123 更新时间:2023-12-03 19:12:14 25 4
gpt4 key购买 nike

我正在尝试减少应用程序中的内存泄漏,因此我使用仪器来查找所有泄漏。我设法消除了几乎所有的泄漏,除了一个非常烦人的泄漏。

Instruments 告诉我有很多 NSPlaceholderstring 泄漏。生成泄漏的代码(根据仪器)是:

if (nil == storedHash) 
{
NSString *description = [[NSString alloc] initWithFormat:@"1 = %@ 2= %d", uId, service];
self.storedHash = description; // This line is the leak according to instruments

[description release];
description = nil;
}

return storedHash

storedHash 的定义如下:

@property(copy) NSString* storedHash;

我尝试了我能想到的一切:

  • 我使用保留而不是复制
  • 我使用了 NSString (stringWithFormat) 的自动释放分配
  • 我尝试使用自动释放池包装代码

以上都没有改变泄漏情况。 (在某些情况下,泄漏的类型会发生变化,但仍然存在泄漏)

有人有想法吗?

最佳答案

你们在哪里发布storedHash?你在dealloc中释放它吗?

请注意,NSPlaceholdeString 是一个实现细节;它是 NSString+alloc 方法返回的实例的类。

关于iphone - 显示 NSPlaceholderstring 泄漏的仪器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4540420/

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