2012-08-07 23 views
0

我正在使用工具來檢查我的應用程序的分配。 最糟糕的類別是「Malloc 5.00 KB」,它可以達到20甚至30 MB。 當我進去,我看到這些撥款幾乎100%來自 基金會圖書館, 一種叫「[NSConcreteMutableData initWithCapacity]」在iOS應用程序中找不到分配原因(使用儀器)

我無法找到我的代碼或任何該等分配源關於網絡功能的詳細信息...

+1

它與你的NSData對象做,你能共享代碼? – 2012-08-07 16:43:20

+1

我喜歡在Xcode中使用Product> Analyze,它讓我知道潛在內存泄漏的位置。如果你還沒有嘗試過,請給它一個鏡頭。 – Zhang 2012-08-08 03:18:41

+0

謝謝@JamesPaolantonio: 1.關於NSData - 我不能共享代碼,因爲我的代碼中有很多NSData對象,從哪裏開始?它沒有顯示它是我的圖書館做這個分配,但基金會做... 2.當然,我用分析 - 我已經到了我的代碼幾乎沒有泄漏的地步。實際上,我的代碼中剩下的兩個泄漏是nsdataformatter(一個衆所周知的iOS泄漏問題)和JSonParser(另一個衆所周知的泄漏),但這些泄漏最多不超過300KB。而如果我檢查「分配」,我看到高達20MB的分配,我找不到源... – 2012-08-08 06:08:33

回答

0

OK發現它! 經過大部分我的代碼5次(!)沒有發現問題後,我開始懷疑第三方庫。

問題出在ASIHTTPRequest庫中。我使用了該庫的一箇舊版本(2011年中)。只要我用最新版本代替它,大部分問題都解決了。

現在我來處理SBJsonParser和NSDataFormatter泄漏,我做:)

感謝

相關問題