正常我們是無法控制那一張圖片先下載完的,那么怎么來控制順序顯示呢仇穗?可以用信號量來控制流部。
順序下載
解釋:
1.上邊三張圖片全部是異步下載。
2.下載完成后纹坐,分別隔5秒顯示枝冀。著控制全部要靠信號量來控制。光靠線程組是沒有用的耘子,因?yàn)檫@里是異步下載果漾。
3.網(wǎng)絡(luò)請求然后處理響應(yīng)數(shù)據(jù)是個耗時的操作,也是我們開發(fā)中常見的一種情形谷誓,在網(wǎng)絡(luò)請求以及處理響應(yīng)數(shù)據(jù)操作完畢之后我們在執(zhí)行別的操作這樣的過程也是我們開發(fā)中常見的情形绒障。網(wǎng)絡(luò)請求的任務(wù)是提交給子線程異步處理了,網(wǎng)絡(luò)請求這樣的任務(wù)也就快速執(zhí)行完畢了捍歪,但是網(wǎng)絡(luò)請求是一個任務(wù)户辱,處理收到的網(wǎng)絡(luò)響應(yīng)又是一個任務(wù),注意不要把這兩個過程混為一談糙臼。而收到網(wǎng)絡(luò)響應(yīng)以及處理返回響應(yīng)的數(shù)據(jù)并不是在子線程中執(zhí)行的庐镐,我們通過在回調(diào)響應(yīng)處理的block(比如48~53行之間就有兩個block)中打印當(dāng)前線程,會發(fā)現(xiàn)回調(diào)響應(yīng)處理的block是在主線程中被執(zhí)行的变逃。
4.線程組只能處理添加在線程組中的任務(wù)必逆。而回掉數(shù)據(jù)處理并不屬于加在線程組中的任務(wù)。