cpu的多线程的用处:1、让同一个处理器上的多个线程同步执行并共享处理器的执行资源;2、可最大限度地实现宽发射、乱序的超标量处理;3、提高处理器运算部件的利用率;4、缓和由于数据相关或Cache未命中带来的访问内存延时。
CPU多线程简称SMT,可通过复制处理器上的结构状态,让同一个处理器上的多个线程同步执行并共享处理器的执行资源,可最大限度地实现宽发射、乱序的超标量处理,提高处理器运算部件的利用率,缓和由于数据相关或Cache未命中带来的访问内存延时。
注:当没有多个线程可用时,SMT处理器几乎和传统的宽发射超标量处理器一样。
cpu的多线程技术可以为高速的运算核心准备更多的待处理数据,减少运算核心的闲置时间;解决了负载均衡问题,充分利用了CPU资源,提高CPU的使用率。采用多线程的方式可以同时完成几件事情而不互相干扰,缩短了处理大量的IO操作时或处理的情况需要花费大量的时间。
多线程的好处:
1、使用线程可以把占据时间长的程序中的任务放到后台去处理
2、用户界面更加吸引人,这样比如用户点击了一个按钮去触发某件事件的处理,可以弹出一个进度条来显示处理的进度
3、程序的运行效率可能会提高
4、在一些等待的任务实现上如用户输入,文件读取和网络收发数据等,线程就比较有用了.
多线程的缺点:
1、如果有大量的线程,会影响性能,因为操作系统需要在它们之间切换.
2、更多的线程需要更多的内存空间
3、线程中止需要考虑对程序运行的影响.
4、通常块模型数据是在多个线程间共享的,需要防止线程死锁情况的发生