多线程的作用以及什么地方用到多线程?

1>.多线程的作用:可以解决负载均衡问题,充分利用CPU的资源.为了提高CPU的使用率,才用多线程的方式去同时完成几件事情而不互相干扰

2>.大多情况下,要用到多线程的主要是需要处理大量的IO操作时或处理的情况需要耗时大量的时间等等,比如:读写文件,视频图像采集-处理-显示-保存等

3>.ios中多线程的方法主要有三种:1.NSThread 2.NSOperation 3.GCD

4>.多线程中的区别有:

NSOperatin与GCD之间的区别:

a.GCD是iOS4.0推出的,主要针对多核CPU做了优化,是C语言技术

(1).GCD将任务(block)添加到队列中(串行/并行/全局/主队列),并且以同步/异步的方式执行任务的函数

(2).GCD提供一些NSOperation不具备的功能

1. 一次性执行

2.延迟执行

3.调度组

b.NSOperation

(1).NSOperation是iOS2.0推出的,iOS4之后重写了NSOperation

(2).NSOperation将操作(异步任务)添加到队列(并发队列),就会执行指定操作的函数

(3).NSOperation 里提供的方便的操作

1.最大并发数

2.队列的暂停/继续

3.取消所有的操作

4.指定操作之间的依赖关系(GCD可以同时实现)


GCD与NSThread的区别

1>.NSThread通过@selected指定要执行的方法,代码分散

2>.GCD通过block指定要执行的代码,代码集中,所有的代码写在一起 让代码更加简单,易于阅读与维护

3>.使用GCD不需要管理线程的创建/销毁/复用的过程,程序员不用管理线程的生命周期

4>.如果要开多个线程NSThread必须实例化多个线程对象

5>.NSThread靠NSObject的分类方法实现的线程间通讯

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值