0
我想我有內存泄漏,我已經啓用殭屍,並在剖析器中突出顯示了這部分代碼,我已經標記了百分比。Obj-C,殭屍內存泄漏,我看不到它?
這對我來說很好。
任何想法?
[NSThread detachNewThreadSelector:@selector(threadStartAnimating:)
toTarget:self withObject:nil];
NSMutableArray *tmpArray = [[NSMutableArray alloc]init];
if (metadata.isDirectory) {
for (DBMetadata *file in [metadata.contents reverseObjectEnumerator]) {
[tmpArray addObject:file.filename]; -- 44%
}
}
self.itemArray = tmpArray;
[tmpArray release];
[self.dropboxTableView reloadSections:[NSIndexSet indexSetWithIndex:0]
withRowAnimation:UITableViewRowAnimationFade]; -- 55.6%
[activityIndicator stopAnimating];
編輯
在接口方面: -
NSMutableArray *itemArray;
殭屍不是用來檢測泄漏的;它們用於告訴你是否嘗試訪問已分配的對象。 http://www.cocoadev.com/index.pl?NSZombieEnabled – occulus 2011-12-18 15:57:34
您使用哪種分析器?內存或CPU?這些分配百分比,還是泄漏百分比? – 2011-12-18 15:59:50
當你說'分析器'時,你的意思是內存泄漏工具嗎? 讀取工具的輸出並不總是很直接,因爲它經常會顯示你分配內存的位置,而不是代碼中導致泄漏的位置。 因此,mem泄漏工具的屏幕截圖可能非常方便。但通常,我會查看上面%代碼中指定的代碼。例如,你的tmpArray被設置爲self.itemArray - 所以在別處泄漏self.itemArray的東西? – occulus 2011-12-18 16:01:43