美文网首页iOS开发中的神兵利器
4.2 通过BlockOperation实现线程的队列 [iOS

4.2 通过BlockOperation实现线程的队列 [iOS

作者: 互动教程网 | 来源:发表于2018-04-11 21:24 被阅读2次

    1. 本节课将为您演示线程队列的使用,使用线程队列可以依次执行一系列的任务。首先在左侧的项目导航区,打开视图控制器的代码文件。

    image

    2. 现在开始编写代码,使用线程队列功能,依次下载网络上的两张图片。

    image

    3. 添加两个图像视图属性,用来显示下载的两张图片。

    image

    4. 接着初始化第一个图像视图,并设置它的显示区域,然后将该图像视图添加到根视图中。

    image

    5. 使用相同的方式,初始化第二个图像视图,该图像视图位于第一个图像视图的下方。

    image

    6. 通过一个方法,获得一个阻塞操作对象,设置该对象的名称、图片网址以及是否为上方的图片。

    image

    7. 使用相同的方式,获得第二个阻塞操作对象。

    image

    8. 初始化一个操作队列对象。

    image

    9. 设置在队列中,一次只执行一个任务。

    image

    10. 依次将两个阻塞操作对象添加到队列中。

    image

    11. 添加一个循环,用来遍历队列中的所有操作。

    image

    12. 在控制台依次输出两个阻塞操作对象的名称。

    image

    13. 添加一个方法,用来生成并返回阻塞操作对象。

    image

    14. 初始化一个阻塞操作对象。

    image

    15. 将图片的路径字符串,转换成网址对象。

    image

    16. 初始化一个二进制数据对象,用来存储从网络下载的图片的数据流。

    image

    17. 添加一个异常捕捉语句,执行图片的下载任务。

    image

    18. 首先使线程暂停1.0秒钟,以方便观察任务的执行。

    image

    19. 接着通过二进制数字对象的,从网址获取内容的方法,下载网络图片,并将下载的数据存储在二进制数据对象中。

    image

    20. 然后将数据转换成图像内容。

    image

    21. 判断需要使用哪个图像视图,来显示下载之后的图片内容。

    image

    22. 在主线程上,使用位于上方的图像视图,显示下载的图片内容。

    image

    23. 接着使用位于下方的图像视图显示图片内容。

    image

    24. 然后设置阻塞操作对象的名称属性,并返回设置好的对象。

    image

    25. 添加一个方法,用来设置位于上方的图像视图的内容。

    image

    26. 添加另一个方法,用来设置位于下方的图像视图的内容。接着点击左上角的[编译并运行]按钮,启动模拟器预览项目。

    image

    27. 模拟器启动后,从网络上依次下载了两张图片,并逐个显示在两个图像视图中。最后点击此处的[停止]按钮,关闭模拟器,并结束本节课程。

    image

    本文整理自:《app开发中的神兵利器》,真正的[手把手]教学模式,用最快的速度上手iOS开发,苹果商店App Store免费下载:https://itunes.apple.com/cn/app/id1209739676,或扫描本页底部的二维码。课程配套素材下载地址:资料下载

    apps8 2.png

    相关文章

      网友评论

        本文标题:4.2 通过BlockOperation实现线程的队列 [iOS

        本文链接:https://www.haomeiwen.com/subject/ngttkftx.html