您现在的位置: 爱51代码网 >> 范文 >> 文章正文
iOS多线程编程概要总结

1.  创建线程的平均开销:  

                  内存堆栈:   主线程—— 1M ,  子线程——512K

                         时间:   基本可以忽略不计


2.  创建线程的多元宵祝福网页 种方法: 

  NSThread,   POSIX(基于C语言支持的API), NSObject的performSelector


3.  在工程没有使用ARC时,线程执行体代码中创建自动释放池


4. 为了线程安全,尽量避免在线程中使用共享的数据结构


5. runloop: 线程中的一个事件处理循环,用来不停的调度工作以及处理输入事件.

每一个线程都有自己的runloop, 主线程是默认开启的,子线程是需要手动开启。

        runloop监视每个输入源,处理事件,如果没有事件,runloop休眠,不消耗CPU资源

需要使用runloop的四种情况:

  a.使用端口或自定义输入源和其他线程通信

  b.子线程中使用了定时器

  c.cocoa中使用任何performSelector到了线程中运行方法

  d.使线程履行周期性任务

在子线程中用了NSURLConnection异步请求,那也需要用到runloop,不然线程退出了,相应的delegate方法就不能触发。


6. 线程同步:  a. 原子操作

b. 内存屏障和volatile变量

       内存屏障: 确保内存操作按照正确顺序工作的非阻塞同步工具

      volatile : 一般编译器会优化代码通过加载这些变量的值进入寄存器。 对于线程之间共享的变量,使用volatile强制编译器每次都从内存读取数据,确保数据的同步。

c. 锁: mutex, @synchronized()指令

[1] [2] 下一页

  • 上一篇文章:

  • 下一篇文章: 没有了
  • 最新文章 热点文章 相关文章
    青岛科学六年级下册教材分析
    生日旅行总结
    中小板生日快乐随感
    送生日快乐桑葚乳酪小蛋糕
    写给女儿的生日快乐
    总分公司财务核算
    恢复使用繁体字可行性研究报告
    青少年吸烟心理探析
    保险受益人制度相关问题的探讨
    初中生地理读图能力培养的研究
    生日旅行总结
    中小板生日快乐随感
    送生日快乐桑葚乳酪小蛋糕
    写给女儿的生日快乐
    恢复使用繁体字可行性研究报告
    初中生地理读图能力培养的研究
    搞笑生日祝福
    搞笑生日祝福语
    生日祝福词
    生日祝福语大全
    iPhone开发ARC总结
    敢于尝试,善于总结
    C语言sscanf函数的总结
    WCF+EntityFramework+mysql总
    给定的 System.Uri 无法转换
    MooseFS使用问题分析总结
    UITableView 基本使用方法总
    国家级职业技能技术教育培训
    二年级下学期语文教学工作总
    大专生演讲比赛活动总结
     



    设为首页 | 加入收藏 | 网站地图 | 友情链接 |