首页 > 代码库 > 多线程之pthread, NSThread, NSOperation, GCD
多线程之pthread, NSThread, NSOperation, GCD
关于多线程会有一系列如下:
多线程之概念解析
多线程之pthread, NSThread, NSOperation, GCD
多线程之NSThread
多线程之NSOperation
多线程之GCD
pthread:跨平台,适用于多种操作系统,可移植性强,是一套纯C语言的通用API,且线程的生命周期需要程序员自己管理,使用难度较大,所以在实际开发中通常不使用。
NThread:是苹果对pthread的一个封装。通过封装可以在Cocoa环境中,可以更简易地用多线程。线程的生命周期由程序员管理。每个NSThread对象对应一个线程,真正最原始的线程。
1)优点:NSThread 轻量级最低,相对简单。
2)缺点:手动管理所有的线程活动,如生命周期、线程同步、睡眠等
NSOperation:基于OC语言API,底层是GCD,增加了一些更加简单易用的功能,使用更加面向对象。线程的生命周期由系统自动管理。
1)优点:自带线程周期管理,操作上可更注重自己逻辑。
2)缺点:面向对象的抽象类,只能实现它或者使用它定义好的两个子类:NSInvocationOperation 和 NSBlockOperation
GCD:ios4.0以后才出现的,基于C语言的API,充分利用设备的多核,旨在替换NSThread等线程技术。线程的生命周期由系统自动管理。
1)优点:最高效,避开并发陷阱。
2)缺点:基于C实现。
多线程之pthread, NSThread, NSOperation, GCD
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。