SDWebImage

SDWebImage

1> 圖片文件緩存的時間有多長:1周_maxCacheAge = kDefaultCacheMaxCacheAge

2> SDWebImage 的內存緩存是用什么實現(xiàn)的?NSCache

3> SDWebImage 的最大并發(fā)數(shù)是多少?maxConcurrentDownloads = 6是程序固定死了,可以通過屬性進行調整!

4> SDWebImage 支持動圖嗎?GIF#import[UIImage animatedImageWithImages:images duration:duration];

5> SDWebImage是如何區(qū)分不同格式的圖像的

根據(jù)圖像數(shù)據(jù)第一個字節(jié)來判斷的!

PNG:壓縮比沒有JPG高,但是無損壓縮,解壓縮性能高,蘋果推薦的圖像格式!

JPG:壓縮比最高的一種圖片格式,有損壓縮!最多使用的場景,照相機!解壓縮的性能不好!

GIF:序列楨動圖,特點:只支持256種顏色!最流行的時候在1998~1999,有專利的!

6> SDWebImage 緩存圖片的名稱是怎么確定的!

md5

如果單純使用 文件名保存,重名的幾率很高!

使用 MD5 的散列函數(shù)!對完整的 URL 進行 md5,結果是一個 32 個字符長度的字符串!

7> SDWebImage 的內存警告是如何處理的!

利用通知中心觀察

- UIApplicationDidReceiveMemoryWarningNotification 接收到內存警告的通知

執(zhí)行 clearMemory 方法,清理內存緩存!

- UIApplicationWillTerminateNotification 接收到應用程序將要終止通知

執(zhí)行 cleanDisk 方法,清理磁盤緩存!

- UIApplicationDidEnterBackgroundNotification 接收到應用程序進入后臺通知

執(zhí)行 backgroundCleanDisk 方法,后臺清理磁盤!

通過以上通知監(jiān)聽,能夠保證緩存文件的大小始終在控制范圍之內!

clearDisk 清空磁盤緩存,將所有緩存目錄中的文件,全部刪除! 實際工作,將緩存目錄直接刪除,再次創(chuàng)建一個同名空目錄!

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • 圖片下載的這些回調信息存儲在SDWebImageDownloader類的URLOperations屬性中,該屬性是...
    怎樣m閱讀 2,667評論 0 1
  • 項目中一直都有使用SDWebImage,對這個框架有一定的了解,但是體系卻未能貫通,因此特地整理下,主要參考: i...
    林大鵬閱讀 1,656評論 2 13
  • 本文通過模擬SDWebImage基本功能實現(xiàn),從而幫助讀者理解SDWebImage的底層實現(xiàn)機制 框架地址:htt...
    si1ence閱讀 3,667評論 8 42
  • 下載 下載管理器 SDWebImageDownLoader作為一個單例來管理圖片的下載操作。圖片的下載是放在一個N...
    wind_dy閱讀 1,658評論 0 1
  • 朝圣,是一個聽起來就很神圣的詞。 一個人的朝圣路,是我在很久之前就聽過的一句很文藝的話,帶有某種高潔的氣息,清遠又...
    桐繾花花閱讀 796評論 0 0

友情鏈接更多精彩內容