我不知道为什么这会在xcode 4.2中造成内存泄漏。既然我没有alloc
eventArraySave
,我是否需要发布它?我以为这会被添加到autorelease
池中。
//Unarchive in to array
NSMutableArray *eventArraySave = [NSKeyedUnarchiver unarchiveObjectWithFile:savedfilePathName];
我是否需要将其释放或上述代码中有任何错误。还要强调我没有alloc
ed eventArraySave
或init
ed eventArraySave
。在此先感谢:)
答案 0 :(得分:2)
您不应该发布eventArraySave
。它将以净保留计数0(自动释放后)返回给您。如果你看到来自这一行的泄漏,那么这表明你在其他地方过度保留它,或者你可能过度保留eventArraySave
中包含的某个对象(因为这是该对象所在的位置)也分配了。)
泄漏工具不会告诉您错误的位置。它们告诉你在哪里分配了后来泄露的内存。
答案 1 :(得分:0)
您发布的代码没有任何问题。
答案 2 :(得分:0)
泄漏只是告诉你内存是在那里创建的,但不会在以后发布。
你现在的任务是找出应该释放它的内容,但事实并非如此。