iOS中多线程的实现方案
多线程的实现原理:
Mach是第一个以多线程方式处理任务的系统
多线程的实现方案:
1、pThread:(C语言中的POSIX接口):#include<pthread.h>
1.1、一套基于C语言的通用的API,适用于Unix\Linux\Windows等系统
1.2、跨平台、可移植、使用难度大、几乎不用
1.3、需要手动的管理内存
2、NSThread:(基于OC)
2.1、使用更加面向对象,简单易用,可直接操作线程对象
2.2、需要手动的管理内存(但在ARC里面不需要自己去写内存管理的代码)
3、GCD:(基于C语言的一套并发技术)
3.1、旨在替代NSThread等线程技术,充分利用设备的多核,这套技术的使用频次非常高
3.2、系统自动管理内存
4、NSOperation:(OC语言,底层是基于GCD)
4.1、比GCD多了一些更简单实用的功能,使用更加面向对象
4.2、系统自动管理内存