zoukankan      html  css  js  c++  java
  • 线程的总结

    多线程
    1.串行
    // 将操作放在队列中
        // 在C语言函数中,定义类型,绝大多数的结尾是_t或者ref

        // 使用串行队列,的异步任务非常非常非常有用!新建子线程是有开销的,不能无休止新建线程

        // 即可以保证效率(新建一个子线程),用能够实现并发

        // 应用案例:

        // 1> 从网络上上下载图片

        // 2> 滤镜(高光,红眼...)

    2.并行
    // 特点:没有队形,执行顺序程序员不能控制!

        // 应用场景:并发执行任务,没有先后顺序关系

        // 并行队列容易出错!并行队列不能控制新建线程的数量!

    3.全局队列(苹果为了方便多线程的设计,提供一个全局队列,供所有的APP共同使用)

    // 全局队列与并行队列的区别
        // 1> 不需要创建,直接GET就能用
        // 2> 两个队列的执行效果相同
        // 3> 全局队列没有名称,调试时,无法确认准确队列
        
        // 记住:在开发中永远用DISPATCH_QUEUE_PRIORITY_DEFAULT
        // 多线程的优先级反转!低优先级的线程阻塞了高优先级的线程!



    4. 主(线程)队列,保证操作在主线程上执行

    s
        // 每一个应用程序都只有一个主线程
        // 为什么需要在主线程上工作呢?
        // 在iOS开发中,所有UI的更新工作,都必须在主线程上执行!

  • 相关阅读:
    国外大学公开课
    普瑞马法则
    在一个整数区间里产生一组不重复的随机数
    arm架构下树莓派 运行javafx流程
    Windows 如何在cmd命令行中查看、修改、删除与添加环境变量
    我来了!
    IIS替代方案:Visual Studio自带的WebServer
    网络收藏夹DEMO
    Web收藏夹
    LazyGuy的BLOG搬迁至CNBLOGS
  • 原文地址:https://www.cnblogs.com/anshinianyujing/p/4546051.html
Copyright © 2011-2022 走看看