2011-06-28 92 views
1

問以下的內存管理:我應該發佈NSData的dataWithContentsOfURL嗎?

NSData *returnData = [NSData dataWithContentsOfURL:[NSURL URLWithString:strURL]            options:0              error:&err]; 

我們看到我們的分配秒殺在這裏,但不知道如果我提出它關閉後,我應該釋放該內存。

當我嘗試發佈時,我收到一個異常,所以沒有在這裏理解關於內部的東西。

在此先感謝!

回答

0

不,你不需要將其釋放。 dataWithContentsOfURL:方法返回autorelease對象。如果您沒有明確保留它,它將自動發佈。

自動,也就是說,只要您當前的線程已正確設置了NSAutoreleasePool即可。所有autorelease對象在其封閉NSAutoreleasePool耗盡時被釋放。如果你在這段代碼中發現了泄漏,那麼相應的池可能不會被頻繁地耗盡(或者根本沒有)。

相關問題