HTML5技术

iOS多线程之NSThread使用 - 华过的痕迹(2)

字号+ 作者:H5之家 来源:H5之家 2015-12-08 09:52 我要评论( )

缺点:需要消耗大量的 CPU 资源 互斥锁的使用前提:多条线程抢夺同一块资源 相关专业术语: 线程同步 线程同步的意思是:多条线程在同一条线上执行(按顺序地执行任务) 互斥锁,就是使用了线程同步技术 原子和非原

    缺点:需要消耗大量的CPU资源

  • 互斥锁的使用前提:多条线程抢夺同一块资源
  • 相关专业术语:线程同步
  •     线程同步的意思是:多条线程在同一条线上执行(按顺序地执行任务)

        互斥锁,就是使用了线程同步技术

    原子和非原子属性

  • OC在定义属性时有nonatomicatomic两种选择
  •     atomic:原子属性,为setter方法加锁(默认就是atomic

        nonatomic:非原子属性,不会为setter方法加锁

  • 原子和非原子属性的选择

  • nonatomicatomic对比

  • atomic:线程安全,需要消耗大量的资源
  • nonatomic:非线程安全,适合内存小的移动设备
  •     2.iOS开发的建议

  •  

    线程间通信

  • 什么叫做线程间通信
  •     在1个进程中,线程往往不是孤立存在的,多个线程之间需要经常进行通信

  • 线程间通信的体现
  • 1个线程传递数据给另1个线程

        在1个线程中执行完特定任务后,转到另1个线程继续执行任务

  • 线程间通信常用方法
  • - (void)performSelectorOnMainThread:(SEL)aSelector withObject:(id)arg waitUntilDone:(BOOL)wait; - (void)performSelector:(SEL)aSelector onThread:(NSThread *)thr withObject:(id)arg waitUntilDone:(BOOL)wait;

  • 线程间通信示例 – 图片下载
  •  

     

     

    1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

    相关文章
    • 【Vue 入门】使用 Vue2 开发一个展示项目列表的应用 - zhangjk

      【Vue 入门】使用 Vue2 开发一个展示项目列表的应用 - zhangjk

      2017-04-30 16:00

    • 对于Bootstrap的介绍以及如何使用 - novai-L

      对于Bootstrap的介绍以及如何使用 - novai-L

      2017-04-29 09:00

    • 在Delphi下使用迅雷APlayer组件进行免注册开发 - Delphi力量

      在Delphi下使用迅雷APlayer组件进行免注册开发 - Delphi力量

      2017-04-28 15:00

    • 探索 vuex 2.0 以及使用 vuejs 2.0 + vuex 2.0 构建记事本应用 - nzbin

      探索 vuex 2.0 以及使用 vuejs 2.0 + vuex 2.0 构建记事本应用 - nzb

      2017-04-25 09:02

    网友点评
    d