0
A
回答
3
我想你在這裏混淆術語。內存泄漏是當你完成後不釋放對象。
漏洞不會直接導致崩潰。如果由於不釋放大量對象而導致內存不足,泄漏可能會間接導致崩潰。但是,如果模擬器中發生崩潰,則幾乎肯定不是這種情況(模擬器具有比設備更多的可用內存)。正如丹尼爾所說,你可以使用儀器工具找出泄漏的事情。
另一個好方法是使用XCode靜態分析器 - 您可以讓它分析代碼並檢測最常見的泄漏。
現在,如果你的應用程序崩潰和它的不是由於內存泄漏(你就可以講這個,因爲你有內存警告輸出到控制檯),那麼很有可能你的問題不是泄漏。也許這是一個不好的訪問(你是超過釋放),在這種情況下,你的儀器泄漏工具不會幫助你。
4
您可以使用儀器來查看潛在的泄漏位置。
這是一個很好的教程。 http://mobileorchard.com/find-iphone-memory-leaks-a-leaks-tool-tutorial/
0
如果您需要查找泄漏和碰撞來源。你可以嘗試這些
- 嘗試從儀器找到儘可能多的泄漏可能和修復NSZombieEnabled
- 設置爲可執行文件的參數和調試應用程序崩潰
- 改變你所有的自動釋放對象使用的alloc初始化不亞於可能。
- 最糟糕的是,如果在嘗試所有上述三種情況後仍然不斷崩潰。你在線程中編寫代碼的內存密集型模塊並清理該線程。我通常注意到線程完成時內存足跡更清晰。這只是我的看法,但是你應該這樣做。
0
您也可以在XCode本身構建+分析您的應用程序(Cmd
+ Shft
+ A
或產品>分析)。它會告訴你更明顯的泄漏。
相關問題
- 1. 應用程序中的內存泄漏
- 2. iPhone應用程序內存泄漏
- 3. iPhone/iPad應用程序內存泄漏
- 4. ASP.Net應用程序池內存泄漏
- 5. WinForms應用程序內存泄漏
- 6. MKMapView內存泄漏iPhone應用程序
- 7. NodeJS 0.3.1應用程序泄漏內存
- 8. gsoap內存泄漏C應用程序
- 9. android應用程序內存泄漏
- 10. Javascript應用程序 - 泄漏內存
- 11. iphone應用程序NSNumber內存泄漏
- 12. 我的程序有內存泄漏
- 13. 我的內存泄漏在C++程序
- 14. Golang程序內存泄漏?
- 15. 內存泄漏Node.js程序
- 16. 我的iPhone應用程序中的內存泄漏在哪裏?
- 17. 爲什麼我的簡單GLX應用程序泄漏內存?
- 18. 我如何測試iphone應用程序的內存泄漏?
- 19. 內存泄漏在我的Ruby on Rails應用程序
- 20. LibGDX:不能破壞屏幕。內存泄漏
- 21. 使用線程的MFC應用程序中的內存泄漏
- 22. 2-3-4泄漏的破壞者
- 23. 通用Windows應用程序Webview內存泄漏 - 清除緩存
- 24. 內存泄漏和堆損壞?
- 25. Linux上多線程C++應用程序中的內存泄漏
- 26. C++程序潛在的內存泄漏
- 27. Libgcrypt程序中的內存泄漏
- 28. 爲什麼儀器「泄漏」模板在我的iOS應用程序中發現我的內存泄漏?
- 29. 使用heapy追查在Django應用程序的內存泄漏
- 30. Spring Boot應用程序緩存內存泄漏
感謝您回覆所有我正在處理的建議.. – rptwsthi 2011-04-22 06:20:40