簡述 IOS中的LazyLoad思想

2021-09-06 14:57:00 字數 327 閱讀 1814

lazy,誰懶?當然是計算機偷懶。通常用法,你有乙個nsarray的property,但是你不在初始化方法裡為其alloc/init,它就只是乙個指標,不會占用記憶體。然後你寫了此property的訪問器,在訪問器裡判斷此property的指標是否為空,若為空,就alloc/init,這時才真正生成這個nsarray。

這樣子達到的效果就是,除非這個nsarray被使用,否則它永遠不會真正生成,也就不會占用記憶體。計算機的偷懶行為可能減少記憶體占用,何樂為不為?

其他lazyload的思想都是這樣:拖到最後一刻,萬不得已了,才開始占用資源,這在iphone這種記憶體較少的裝置上是很有必要的。

參考:

簡述 IOS中的LazyLoad思想

lazy,誰懶?當然是計算機偷懶。通常用法,你有乙個nsarray的property,但是你不在初始化方法裡為其alloc init,它就只是乙個指標,不會占用記憶體。然後你寫了此property的訪問器,在訪問器裡判斷此property的指標是否為空,若為空,就alloc init,這時才真正生成...

IOS中的懶載入lazyLoad

初步寫一些自己對於lazyload的看法吧。這篇文章主要針對普通view,對於image相關的的懶載入,準備過幾天研究一下在寫。懶載入,又稱為延遲載入。通常用法,你有乙個uitextfield型別的property,簡單定義為usernametextfield,但是你不在初始化方法裡為其alloc ...

Tensorflow中的Lazy load問題

用tensorflow訓練或者inference模型的時候,有時候會遇到執行越來越慢,最終記憶體被佔滿,導致電腦宕機的問題,我們稱之為記憶體溢位。出現這種問題很可能是因為在乙個session中,graph迴圈建立重複的節點所導致的lazy load問題。舉個例子,用tensorflow迴圈做多次加法...