NSString *anError = nil;
id plist;
plist = [NSPropertyListSerialization propertyListFromData:rawCourseArray mutabilityOption:NSPropertyListImmutable format:&format errorDescription:&anError];
if (anError != nil){
[anError release];
}
以上代码每次调用时都会导致内存泄漏。我发布错误但仍有泄漏。我没有看到任何解决这个问题的方法。我已经发布了这个,大多数人回答说这不是泄漏。但请参阅泄漏性能工具:
我需要修复此问题,因为最终我的应用程序崩溃了。有任何想法吗?非常感谢
答案 0 :(得分:1)
我遇到了同样的问题。 used propertyListWithData:options:format:error:具有相同的结果。使用NSDictionary initWithContentsOfFile具有相同的结果:
泄露的对象#地址大小负责的图书馆负责框架 NSCFNumber,19<多个> 304字节MediaToolbox FigRemote_CreatePropertyListFromBinaryPListData
FWIW - 我在pList中只有字典,数组和字符串,没有数字。
问题不是错误对象(或方法中的字符串)。问题不在上面,因为它应该是自动释放。最后,我放弃并重新实现了使用JSON和:
http://stig.github.com/json-framework/api/index.html
==>没有更多的泄漏。
最佳, 佛瑞德
答案 1 :(得分:0)
我之前遇到过同样的问题。
基本上这是因为你的error
变量在没有启动的情况下被释放了。所以你可以做的是尝试在释放之前将NSString *error
初始化为空字符串。或者根本不释放它。