日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android中的三级缓存机制

發(fā)布時間:2023/12/20 Android 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android中的三级缓存机制 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

目的:1防止oom 2,提高加載效率

bitmap對象默認 ARGB_8888高質量圖片顯示,而我起先使用rgb565格式圖片呈現(xiàn)效果不變,內存減少近一半,但是從Android4.0開始該選項就無效了,即使設置了也按默認

第一級 ?強引用+軟引用?

采用LRU算法優(yōu)化內存使用,內存不足時,把最小使用的圖片優(yōu)先從內存移除

強引用:LRUCache即可 ?覆寫sizeOf返回每次加載Bitmap占用大小,覆寫entryRemoved,在硬內存放滿時和移除最少使用Bitmap

軟引用:LinkedHashMap完成該算法,通過復寫其removeEldestEntity方法實現(xiàn)

內存大小:各分配1/4

獲取總內存大小:

int menClass=((ActivityManager)mContext.getSystemService(Context.ACTIVITY_SERVICE)).getMemoryClass(); 關于url處理,存儲url的hashCode,避免將來文件名非法,提高查找效率。


硬內存:寧可oom內存不足,也不會釋放其中存儲的數據;

軟內存:一般其中的數據也不會被回收,但是當內存不足時,將釋放其中的數據,釋放掉后,如果將來還要使用,則先從本地加載,


第二級 ?本地緩存

同樣采取LRU算法管理緩存文件,當SD卡剩余容量不足時,優(yōu)先刪除使用最少圖片。

對存儲圖片根據使用時間生成LRU

第三級:網絡讀取

如果本地也沒有,從網絡重新加載.

三級緩存通過httpclient訪問網絡,先放到硬緩存里面,要讀再去加載.


總結

以上是生活随笔為你收集整理的Android中的三级缓存机制的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。