Ipad 尝试覆盖内容后NSDictionary内存泄漏
正在尝试查找内存泄漏。我将它追溯到一个合成的NSDictionary,它用于存储启动时从documents文件夹读入的plist数据。第一次运行时,没有泄漏。但后来在应用程序中,我做了一个网络调用,覆盖了nsdictionary对象,这就是我看到漏洞的地方 更新工作正常,但在仪器中,我发现在覆盖NSDictionary时存在漏洞 在将合成的NSDictionary设置为新内容之前,我尝试了标准版本和nil。不知道下一步该做什么 通常我会马上在这里找到我想要的答案。但这件事让我难堪Ipad 尝试覆盖内容后NSDictionary内存泄漏,ipad,memory,Ipad,Memory,正在尝试查找内存泄漏。我将它追溯到一个合成的NSDictionary,它用于存储启动时从documents文件夹读入的plist数据。第一次运行时,没有泄漏。但后来在应用程序中,我做了一个网络调用,覆盖了nsdictionary对象,这就是我看到漏洞的地方 更新工作正常,但在仪器中,我发现在覆盖NSDictionary时存在漏洞 在将合成的NSDictionary设置为新内容之前,我尝试了标准版本和nil。不知道下一步该做什么 通常我会马上在这里找到我想要的答案。但这件事让我难堪 NSData
NSData *plistXML = [[NSFileManager defaultManager] contentsAtPath:plistPath];
Hubplist = (NSDictionary *)[NSPropertyListSerialization
propertyListWithData:plistXML
options:NSPropertyListImmutable
format:&format
error:NULL];
如果您在任何位置保留或分配了HubbList,则需要在覆盖它之前释放它
NSData *plistXML = [[NSFileManager defaultManager] contentsAtPath:plistPath];
[Hubplist release];
Hubplist = nil;
Hubplist = (NSDictionary *)[NSPropertyListSerialization
propertyListWithData:plistXML
options:NSPropertyListImmutable
format:&format
error:NULL];
// Also make sure to retain it if needed
[Hubplist retain];
不,不使用弧。我确实保留了数据,这似乎贯穿了应用程序的整个生命周期(它需要这样做)