NSThread/NSOperation/GCD三种多线程技术的
2016-07-12 本文已影响0人
莫忘小猪
1.iOS的三种多线程技术
1.NSThread:每个NSThread对象对应一个线程,量级较轻(真正的多线程)
2.NSOperation/NSOperationQueue:面向线程的对象技术
3.GCD(Grand Central Dispatch 派发)是基于C语言的框架,可以冲锋利用多核,是苹果推荐使用的多线程技术
注:NSOperation/NSOperationQueue和GCD是苹果专门开发的“并发”技术,是的程序员可以不去关心线程的具体使用问题
2.三种多线程技术的对比
1⃣️NSThread
-优点:NSThread比其他两个轻量级,使用简单
-缺点:需要自己管理线程的生命周期、线程同步、加锁、睡眠以及唤醒等。线程同步对数据的加锁会有一定的系统开销
2⃣️NSOperation
-不需要关心线程管理,数据同步的事情,可以把精力放在自己需要执行的操作上
-NSOperation是面向对象的
3⃣️GCD
-Grand Central Dispatch是由苹果开发的一个多核编程的解决方案。iOS4.0以上才能使用,是替代NSThread和NSOperation的高效和强大的技术
-GCD是基于C语言的