【发布时间】:2012-02-23 08:27:58
【问题描述】:
我正在查看仪器的泄漏报告。我的一些泄漏指向方法 SBJSON。我很难相信返回的值不是自动释放的,但是在跟踪代码时,它变得非常乏味,包括使用引用调用返回值。我不认为代码跟踪是看待这个问题的正确方法。
有没有办法判断自动释放池中是否保留了任何对象? (我没有使用 ARC。)
更新
这是 Instruments 指向我的一些代码:
- (NSString *) processResults:(NSString *) resultsGeoCodeString {
NSDictionary *resultsGeoCode = [resultsGeoCodeString JSONValue]; // <--- 100%
...
我假设“100%”意味着针对此案例报告的所有泄漏都源自此行。
我不释放对象resultsGeoCode,因为我假设它是自动释放的。
我使用的 SBJSON 套件没有使用 ARC。
【问题讨论】:
-
图书馆可能使用 ARC 吗?
-
我用一些有问题的代码更新了我的问题。我应该补充一点,显示的代码在单例中。我想知道这是否会导致它不被自动发布。如果是这样,我仍然不知道该怎么办。
标签: objective-c memory-management autorelease