如何理解多线程呢
1个回答
展开全部
为了解决负载均衡问题,充分利用CPU资源.为了提高CPU的使用率,采用多线程的方式去同时完成几件事情而不互相干扰.为了处理大量的IO操作时或处理的情况需要花费大量的时间等等,比如:读写文件,视频图像的采集,处理,显示,保存等
多线程的好处:
1.使用线程可以把占据时间长的程序中的任务放到后台去处理
2.用户界面更加吸引人,这样比如用户点击了一个按钮去触发某件事件的处理,可以弹出一个进度条来显示处理的进度
3.程序的运行效率可能会提高
4.在一些等待的任务实现上如用户输入,文件读取和网络收发数据等,线程就比较有用了.
多线程的缺点:
1.如果有大量的线程,会影响性能,因为操作系统需要在它们之间切换.
2.更多的线程需要更多的内存空间
3.线程中止需要考虑对程序运行的影响.
4.通常块模型数据是在多个线程间共享的,需要防止线程死锁情况的发生
实现多线程的方法:
1.NSObject
2.NSthread
3.SNOperation
4.GCD
IOS中多线程的方法主要有三种:
1.NSThread 2.NSOperation 3.GCD
(1).NSOperation与GCD的区别:
(2).GCD与NSThread的区别:
1、NSThread通过@selector指定要执行的方法,代码分散
2、GCD通过Block指定要执行的代码,代码集中,所有的代码写在一起的,让代码更加简单,易于阅读和维护
3、使用GCD不需要管理线程的创建/销毁/复用的过程!程序员不用关心线程的生命周期
4、如果要开多个线程NSThead 必须实例化多个线程对象
5、NSThread靠NSObject的分类方法实现的线程间通讯
多线程的好处:
1.使用线程可以把占据时间长的程序中的任务放到后台去处理
2.用户界面更加吸引人,这样比如用户点击了一个按钮去触发某件事件的处理,可以弹出一个进度条来显示处理的进度
3.程序的运行效率可能会提高
4.在一些等待的任务实现上如用户输入,文件读取和网络收发数据等,线程就比较有用了.
多线程的缺点:
1.如果有大量的线程,会影响性能,因为操作系统需要在它们之间切换.
2.更多的线程需要更多的内存空间
3.线程中止需要考虑对程序运行的影响.
4.通常块模型数据是在多个线程间共享的,需要防止线程死锁情况的发生
实现多线程的方法:
1.NSObject
2.NSthread
3.SNOperation
4.GCD
IOS中多线程的方法主要有三种:
1.NSThread 2.NSOperation 3.GCD
(1).NSOperation与GCD的区别:
(2).GCD与NSThread的区别:
1、NSThread通过@selector指定要执行的方法,代码分散
2、GCD通过Block指定要执行的代码,代码集中,所有的代码写在一起的,让代码更加简单,易于阅读和维护
3、使用GCD不需要管理线程的创建/销毁/复用的过程!程序员不用关心线程的生命周期
4、如果要开多个线程NSThead 必须实例化多个线程对象
5、NSThread靠NSObject的分类方法实现的线程间通讯
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询