Glide之後臺執行緒載入及快取資源

2021-07-25 03:25:56 字數 652 閱讀 1753

為了使後台執行緒載入和處理**資源更容易,glide新增了兩個api:

.load(yoururl)

.downloadonly(500, 500);

file cachefile = future.get();

glide.with(yourfragment)

.load(yoururl)

.diskcachestrategy(diskcachestrategy.all)

.into(yourview);

使用diskcachestrategy.all或diskcachestrategy.source以確保glide使用這個已快取的資源(全尺寸的快取)。

如果你確實想在後台執行緒中處理一下已解碼的,就不要用downloadonly(int, int)了,可以用into(int, int)api獲取乙個futuretarget,然後使用.get()就可以拿到bitmap了。如獲取乙個500*500的centercrop:

.load(yoururl)

.asbitmap()

.centercrop()

.into(500, 500)

.get()

LRU優化特效載入及快取

lru是least recently used的縮寫,即最近最少使用,常用於頁面置換演算法,是為虛擬頁式儲存管理服務的。簡單說就是快取最近最常使用的服務或物件。先來個很爛的草圖 但能說明問題 這個是整體的特效載入優化的流程圖。主要就是對池子的操作,快取起最近最常使用的特效。using system ...

Ajax非同步載入資料及Redis快取

針對網頁分類條目的動態載入,圖為頁面的head部分。categorylistservlet 準備分類資料 productservice service new productservice list categorylist service.findallcategorylist response....

前台執行緒與後台執行緒及執行緒池中等待子執行緒結束

前台執行緒 需要等待所有前台子執行緒執行完,主線程才能繼續往下走。除非強行關掉主線程,所有前台子執行緒才會強行結束。後台執行緒 不需要等待後台執行緒執行完,主線程會繼續往下走。當主線程正常結束或非正常結束,所有後台子執行緒會強行結束,不需要等待非後台子執行緒執行完成。特別注意後台執行緒依附的主程序如...