UIImage加載圖片的兩種方式

在Main Thread中發現不一樣動畫場景中Image IO 開銷和耗時所佔比例均不一,在UIImage元素較多整體疊加耗時也會佔用必定比例.內存開銷也會明顯增高. 編程

UIImage加載圖片方式通常有兩種: 緩存

A:imagedNamed初始化 動畫

B:imageWithContentsOfFile初始化 spa

兩者不一樣之處在於,imageNamed默認加載圖片成功後會內存中緩存圖片,這個方法用一個指定的名字在系統緩存中查找並返回一個圖片對象.若是緩存中沒有找到相應的圖片對象,則從指定地方加載圖片而後緩存對象,並返回這個圖片對象. 對象

而imageWithContentsOfFile則僅只加載圖片,不緩存. 圖片

大 量使用imageNamed方式會在不須要緩存的地方額外增長開銷CPU的時間來作這件事.當應用程序須要加載一張比較大的圖片而且使用一次性,那麼其實 是沒有必要去緩存這個圖片的,用imageWithContentsOfFile是最爲經濟的方式,這樣不會由於UIImage元素較多狀況下,CPU會 被逐個分散在沒必要要緩存上浪費過多時間. 內存

使用場景須要編程時,應該根據實際應用場景加以區分,UIimage雖小,但使用元素較多問題會有所凸顯. it

相關文章
相關標籤/搜索