iOS-21-多线程

作者: 小东门儿 | 来源:发表于2017-02-23 13:58 被阅读30次

3种线程对比:

NSThread:

–优点:NSThread 比其他两个轻量级,使用简单
–缺点:需要自己管理线程的生命周期、线程同步、加锁、睡眠以及唤醒等。线程同步对数据的加锁会有一定的系统开销

GCD:

–Grand Central Dispatch是由苹果开发的一个多核编程的解决方案。iOS4.0+才能使用,是替代NSThread, NSOperation的高效和强大的技术
–GCD是基于C语言的
- NSOperation对象在创建或释放过程中会消耗明显的CUP资源
- 使用Block后代码比使用NSOperation,NSThread更简洁。
- dispatch_group , barrier.
- 条件锁类似于nsoperation中的依赖关系
- 信号量类似于nsoperationqueue中的最大并发量

NSOperation:

–不需要关心线程管理,数据同步的事情,可以把精力放在自己需要执行的操作上
–NSOperation是面向对象的
– 很容易设置两个NSOperation之间的依赖来让某一个操作在上一个操作完成后才执行。
– 方便设置在同一时间运行的操作个数
    – 可以创建操作,支持在第一时间被取消

常见的锁:放在子线程内部,如果放在外面相当于实在主线程加锁

@synchronized(对象)对象锁
NSLock 互斥锁
NSConditionLock 条件锁
NSRecursiveLock 递归锁      

相关文章

  • iOS-21-多线程

    3种线程对比: NSThread: GCD: NSOperation: 常见的锁:放在子线程内部,如果放在外面相当...

  • iOS多线程 NSOperation

    系列文章: 多线程 多线程 pthread、NSThread 多线程 GCD 多线程 NSOperation 多线...

  • iOS多线程 pthread、NSThread

    系列文章: 多线程 多线程 pthread、NSThread 多线程 GCD 多线程 NSOperation 多线...

  • iOS多线程: GCD

    系列文章: 多线程 多线程 pthread、NSThread 多线程 GCD 多线程 NSOperation 多线...

  • iOS多线程运用

    系列文章: 多线程 多线程 pthread、NSThread 多线程 GCD 多线程 NSOperation 多线...

  • iOS多线程基础

    系列文章: 多线程 多线程 pthread、NSThread 多线程 GCD 多线程 NSOperation 多线...

  • 多线程介绍

    一、进程与线程 进程介绍 线程介绍 线程的串行 二、多线程 多线程介绍 多线程原理 多线程的优缺点 多线程优点: ...

  • iOS进阶之多线程管理(GCD、RunLoop、pthread、

    深入理解RunLoopiOS多线程--彻底学会多线程之『GCD』iOS多线程--彻底学会多线程之『pthread、...

  • iOS多线程相关面试题

    iOS多线程demo iOS多线程之--NSThread iOS多线程之--GCD详解 iOS多线程之--NSOp...

  • 多线程之--NSOperation

    iOS多线程demo iOS多线程之--NSThread iOS多线程之--GCD详解 iOS多线程之--NSOp...

网友评论

    本文标题:iOS-21-多线程

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