Volley讀書筆記
談?wù)勛约鹤xVolley的收獲:
1.多線程技術(shù):通過主線程+CacheDispatcher緩存線程+NetworkDispatcher網(wǎng)絡(luò)請(qǐng)求數(shù)據(jù)線程,多線程并發(fā)處理下載網(wǎng)絡(luò)資源。多線程間通過ResponseDelivery的實(shí)例ExecutorDelivery傳遞數(shù)據(jù),事實(shí)上,還是要通過 new ExecutorDelivery(new Handler(Looper.getMainLooper())) 來構(gòu)造,也就是要通過Handler實(shí)現(xiàn)線程間的數(shù)據(jù)訪問
2.CacheDispatcher和NetworkDispatcher都是繼承自Thread的,而默認(rèn)情況下for循環(huán)會(huì)執(zhí)行四次,也就是說當(dāng)調(diào)用了Volley.newRequestQueue(context)之后,就會(huì)有五個(gè)線程一直在后臺(tái)運(yùn)行,不斷等待網(wǎng)絡(luò)請(qǐng)求的到來,其中CacheDispatcher是緩存線程,這也就導(dǎo)致了Volley不適用于高并發(fā)的大數(shù)據(jù)網(wǎng)絡(luò)請(qǐng)求
3.PRocess.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND);設(shè)置Android線程優(yōu)先級(jí)為:標(biāo)準(zhǔn)后臺(tái)程序
4.線程中隊(duì)列和緩存的使用
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注