iOS多线程相关操作
2014-09-22 20:56
169 查看
一.简介
iOS的三种主要的多线程编程技术,分别是:
1.NSThread
2.NSOperationQueue
3.GCD(Grand Central Dispatch)
[b]三种方式抽象度层次从低到高,抽象度越高使用越简单,也是APPLE推荐的.
[/b]
[b]NSThread:[/b]
[b]1.相对来讲,是轻量级的多线程实现方式;[/b]
[b]2.[b]需要自己管理线程的生命周期和线程同步,线程同步对数据的加锁会有一定的系统开销,[b]一般使用Cocoa thread技术,程序猿工作量稍大一点;[/b][/b][/b]
3.是真正的多线程
Cocoa operation:
1.Cocoa operation 相关的类是 NSOperation ,NSOperationQueue。NSOperation是个抽象类,使用它必须用它的子类,可以实现它或者使用它定义好的两个子类:NSInvocationOperation 和 NSBlockOperation。创建NSOperation子类的对象,把对象添加到NSOperationQueue队列里执行。
2.不需要关心线程管理,数据同步的事情,可以把精力放在自己需要执行的操作上
[b]GCD:[/b]
[b][b]Grand Central Dispatch (GCD)是Apple开发的一个多核编程的解决方法,是基于C开发的一种多线程方式,在iOS4.0开始之后才能使用。GCD是一个替代诸如NSThread, NSOperationQueue, NSInvocationOperation等技术的很高效和强大的技术。
[/b][/b]
二.实现方法
1.NSThread:
//NSThread第一种方式
[NSThread
detachNewThreadSelector:@selector(buttonAction)
toTarget:self
withObject:nil];
//NSThread第二种方式
NSThread * myThread = [[NSThread
alloc]initWithTarget:self
selector:@selector(buttonAction)
object:nil];
[myThread
start];
iOS的三种主要的多线程编程技术,分别是:
1.NSThread
2.NSOperationQueue
3.GCD(Grand Central Dispatch)
[b]三种方式抽象度层次从低到高,抽象度越高使用越简单,也是APPLE推荐的.
[/b]
[b]NSThread:[/b]
[b]1.相对来讲,是轻量级的多线程实现方式;[/b]
[b]2.[b]需要自己管理线程的生命周期和线程同步,线程同步对数据的加锁会有一定的系统开销,[b]一般使用Cocoa thread技术,程序猿工作量稍大一点;[/b][/b][/b]
3.是真正的多线程
Cocoa operation:
1.Cocoa operation 相关的类是 NSOperation ,NSOperationQueue。NSOperation是个抽象类,使用它必须用它的子类,可以实现它或者使用它定义好的两个子类:NSInvocationOperation 和 NSBlockOperation。创建NSOperation子类的对象,把对象添加到NSOperationQueue队列里执行。
2.不需要关心线程管理,数据同步的事情,可以把精力放在自己需要执行的操作上
[b]GCD:[/b]
[b][b]Grand Central Dispatch (GCD)是Apple开发的一个多核编程的解决方法,是基于C开发的一种多线程方式,在iOS4.0开始之后才能使用。GCD是一个替代诸如NSThread, NSOperationQueue, NSInvocationOperation等技术的很高效和强大的技术。
[/b][/b]
二.实现方法
1.NSThread:
//NSThread第一种方式
[NSThread
detachNewThreadSelector:@selector(buttonAction)
toTarget:self
withObject:nil];
//NSThread第二种方式
NSThread * myThread = [[NSThread
alloc]initWithTarget:self
selector:@selector(buttonAction)
object:nil];
[myThread
start];
相关文章推荐
- IOS 多线程分类以及多线程的相关操作
- 讲Linux下面线程的操作、多线程的同步和互斥相关函数及操作的文章链接
- iphone:ios中文件的相关操作:读,写,删除
- iOS 图片相关操作,如:翻转、缩放、截取等
- iOS与日期相关的操作
- IOS开发者帐号申请流程和相关操作
- iOS 文件相关操作
- IOS文件系统及其相关操作(NSFileManager,NSFileHandle)
- iOS 文件以及文件夹相关操作
- IOS文件系统及其相关操作(NSFileManager,NSFileHandle)
- ios中文件的相关操作:读,写,删除
- iOS Dev 深入浅出 导航控制器(二)with表视图相关操作
- IOS文件系统及其相关操作(NSFileManager,NSFileHandle)
- 整理在ios破解版本上安装OpenSSH及相关操作
- IOS中图片相关操作(读取、保存、绘制、其它相关)
- iphone:ios中文件的相关操作:读,写,删除
- linux下文件的读写操作、字符串的处理操作,多线程操作等相关函数使用说明
- 讲Linux下面线程的操作、多线程的同步和互斥相关函数及操作的文章链接
- ios开发分页控件的相关操作
- iOS手机联系人相关操作