iOS开发多线程篇--基本概念和创建方式

目录

一 基本概念

二 OC中的多线程

1  NSThread(基本不用)
2  GCD(Grand Central Dispatch)
3  NSOperation与Queue
4 Pthread

一 基本概念

多线程按字面意思是同步完成多项任务,提高了资源的使用效率,从硬件、操作系统、应用软件不同的角度去看,多线程被赋予不同的内涵。对于硬件:现在市面上多数的CPU都是多核的,多核的CPU运算多线程更为出色;从操作系统角度:是多任务,现在用的主流操作系统都是多任务的,可以一边听歌、一边写博客;对于应用来说:多线程可以让应用有更快的回应,可以在网络下载时,同时响应用户的触摸操作。在iOS应用中,对多线程最初的理解,就是并发。

二 OC中的多线程

OC中的多线程是Cocoa框架下的多线程,通过了Cocoa的封装,可以让我们创建的对象。
OC中的多线程的创建方式:

1 NSThread(基本不用)

创建和启动线程 有3种方式(一个 NSThread 对象就代表一条线程)
1.1)减号方法 alloc init
1.2)加号方法 调用detachNewThreadSelector 方法
[NSThread detachNewThreadSelector:@selector(run) toTarget:self withObject:nil];
1.3)隐式创建 [self performSelectorBackground:@seletor()withObject:nil];

2 GCD(Grand Central Dispatch)

GCD的API接口为C语言的函数,函数参数中多数有Block。

3 NSOperation与Queue 本人用得最多的一种多线程编程方式。
4 Pthread

跨平台,适用于多种操作系统,可移植性强,是一套纯C语言的通用API,且线程的生命周期需要程序员自己管理,使用难度较大,通常不使用

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容