美文网首页傲视苍穹iOS《Objective-C》VIP专题iOS学习开发
iOS多线程同步异步、串行并发的剖析

iOS多线程同步异步、串行并发的剖析

作者: 傲视苍穹 | 来源:发表于2019-10-01 21:45 被阅读0次

    先来说一个队列和任务:

    • 队列分为串行和并行
    • 任务的执行分为同步和异步

    这两两组合就成为了串行队列同步执行,串行队列异步执行,并行队列同步执行,并行队列异步执行

    而异步是多线程的代名词,异步在实际引用中会开启新的线程,执行耗时操作

    那我们先来知道一个非常重要的事情:

    队列只是负责任务的调度,而不负责任务的执行

    任务是在线程中执行的

    队列和任务的特点:

    队列的特点:先进先出,排在前面的任务最先执行,

    串行队列:任务按照顺序被调度,前一个任务不执行完毕,队列不会调度

    并行队列:只要有空闲的线程,队列就会调度当前任务,交给线程去执行,不需要考虑前面是都有任务在执行,只要有线程可以利用,队列就会调度任务。

    主队列:专门用来在主线程调度任务的队列,所以主队列的任务都要在主线程来执行,主队列会随着程序的启动一起创建,我们只需get即可

    全局队列:是系统为了方便程序员开发提供的,其工作表现与并发队列一致。


    同步执行:不会开启新的线程,任务按顺序执行

    异步执行:会开启新的线程,任务可以并发的执行

    相关文章

      网友评论

        本文标题:iOS多线程同步异步、串行并发的剖析

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