arc下内存泄漏的解决小技巧
一定要注意,我們運行app時,一定要關(guān)心內(nèi)存的使用,盡量不要超過20M,即使有很多圖片要顯示也絕對不能超過30M。所以運行自己開發(fā)的app時多關(guān)心內(nèi)存的使用是個很好的習(xí)慣。
對于性能,內(nèi)存的優(yōu)化,這個涉及的就太多了。現(xiàn)在先講講幾個最基本常見的內(nèi)存泄露下的解決方法。
?
1. instruments
instrument可以報出不少內(nèi)存泄露的錯誤,方法:http://www.cocoachina.com/ios/20141203/10519.html,很容易操作。
不過它最大的功能還是可以自己看出哪里內(nèi)存用了多,從而進行優(yōu)化。
2. arc的問題
ARC does not manage C-types, of which CGImage may be considered. You must release the ref manually when you are finished with?CGImageRelease(image);
這是stackoverflow別人的回答,就是說在arc模式下,C-types的對象需要手動來進行釋放
?
arc還會有循環(huán)引用等問題,導(dǎo)致對象不能被釋放,有個小技巧來處理,可以寫下-(void)dealloc設(shè)置斷點,如果頁面跳轉(zhuǎn)沒有執(zhí)行它,那么證明你犯錯了,自動計數(shù)沒有為0,不會釋放的,內(nèi)存會一直增加,需要去找錯。
3. image的一些建議
很多圖片要加載,不要用隊列存儲image,要么image存在沙盒里,隊列里存地址,要么隊列存儲縮略圖,點擊的時候再放大。
最不可取的方法就是本來是一個清晰的大圖,可能需要縮小,就直接imageView改變尺寸,這個非常耗內(nèi)存。
轉(zhuǎn)載于:https://www.cnblogs.com/stevenfukua/p/4654147.html
總結(jié)
以上是生活随笔為你收集整理的arc下内存泄漏的解决小技巧的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 循环数
- 下一篇: HDU 5097 Page Rank (