正常我们是无法控制那一张图片先下载完的,那么怎么来控制顺序显示呢?可以用信号量来控制。
解释:
1.上边三张图片全部是异步下载。
2.下载完成后,分别隔5秒显示。着控制全部要靠信号量来控制。光靠线程组是没有用的,因为这里是异步下载。
3.网络请求然后处理响应数据是个耗时的操作,也是我们开发中常见的一种情形,在网络请求以及处理响应数据操作完毕之后我们在执行别的操作这样的过程也是我们开发中常见的情形。网络请求的任务是提交给子线程异步处理了,网络请求这样的任务也就快速执行完毕了,但是网络请求是一个任务,处理收到的网络响应又是一个任务,注意不要把这两个过程混为一谈。而收到网络响应以及处理返回响应的数据并不是在子线程中执行的,我们通过在回调响应处理的block(比如48~53行之间就有两个block)中打印当前线程,会发现回调响应处理的block是在主线程中被执行的。
4.线程组只能处理添加在线程组中的任务。而回掉数据处理并不属于加在线程组中的任务。