1. 程式人生 > 其它 >iOS記憶體暴漲的一些原因及優化

iOS記憶體暴漲的一些原因及優化

 轉:

一、列表

    TableView/CollectionView的無限下滑會導致資料、UI的持續呼叫,會造成記憶體暴漲

    優化:採用手指停止時進行載入的方法,對於一直無限上滑的騷操作,可以不用處理太對,在將要開始滑動(停止請求、處理資料等)/將要停止滑動(立馬開始處理資料)節點把握

二、視訊/圖片大批量的載入

    圖片/視訊的大批載入,會讓CPU飆升,因為影象的請求,呼叫GPU顯示,甚至有一些超大圖的顯示,會讓App暴漲,崩潰也再所難免

    優化:對於一些好用的三方(OC:SD;Swift:KF)是需要使用的,但對於一些方法的監聽也是需要的didReceiveMemoryWarning/applicationDidReceiveMemoryWarning

,當收到此警告要立即清除Cache

三、濫用主執行緒重新整理UI

    重新整理UI需要在主執行緒裡面。本身重新整理UI就是一個耗時、耗效能的操縱,對於連續性重新整理UI,記憶體肯定會暴增,所以這就要求開發者程式碼規範,在業務層處理時,對於一些持續重新整理UI操作,要注意。

四、遞迴呼叫

    遞迴指迴圈呼叫,直到達到某一條件停止。因為會無限呼叫,所以會造成CPU一直處於執行狀態,就會造成記憶體增長。

五、定時器

    定時器是一個使用建立、不用立即銷燬的物件。在開發時如多處使用時要注意,切記銷燬物件。

    9人點贊   日記本    

作者:iOS_我更專業
連結:https://www.jianshu.com/p/71060e286615
來源:簡書
著作權歸作者所有。商業轉載請聯絡作者獲得授權,非商業轉載請註明出處。