什麼叫懶載入 懶載入有什麼作用?

2022-08-02 20:27:16 字數 615 閱讀 2189

懶載入其實就是延時載入,即當物件需要用到的時候再去載入。

----- 概括

什麼叫做需要用到的時候?比如說乙個物件被建立出來就需要一筆記憶體開支,如果接下來就沒有其他的操作(比如namutablearray物件還沒有被存放資料;uiview物件還沒有被顯示出來),那可以認為這個物件建立得「過早」了。

那如何使用懶載入呢?自從點語法出現以後,訪問乙個物件基本就類似於self.clickbtn或者是[self clickbtn],這都是呼叫的clickbtn的getter方法,因此就可以在getter方法中實現懶載入。

因此,懶載入其實就是所謂的重寫物件的getter方法,當系統或者開發者呼叫物件的getter方法時,再去載入物件。需要注意的是:重寫getter方法時,先判斷物件當前是否為空,為空的話再去例項化物件。比如:

- (nsarray *)personnames 

return

_personnames;

}

懶載入的優點:

1. 不需要將物件的例項化全部寫到viewdidload中,可以簡化**,增強**的可讀性

2. 物件的例項化在getter方法中,各司其職,降低耦合性

3. 對系統的記憶體佔用率會減少

iOS懶載入有坑,使用懶載入時應該注意避免

如下面是乙個自定義的collectionview示圖的懶載入方法,當你呼叫 self.collectionview 後,此時 懶載入開始初始化,並返回collectionview例項物件,但是如果懶載入的 還沒有初始化完成並返回結果時,你再一次 self.collectionview 此時又會呼叫一...

mysql懶載入 mybatis懶載入

1.概念 懶載入就是按需載入,我們需要什麼的時候再去進行什麼操作。而且先從單錶查詢,需要時再從關聯表去關聯查詢,能很大提高資料庫效能,因為查詢單錶要比關聯查詢多張表速度要快。在mybatis中,resultmap可以實現高階對映 使用association collection實現一對一及一對多對映...

路由懶載入與元件懶載入

一 為什麼要使用路由懶載入 為給客戶更好的客戶體驗,首屏元件載入速度更快一些,解決白屏問題。二 定義 懶載入簡單來說就是延遲載入或按需載入,即在需要的時候的時候進行載入。三 使用 常用的懶載入方式有兩種 即使用vue非同步元件 和 es中的import 1 不用懶載入,vue中路由 如下 impor...