多线程学习-2
一、进一步理解进程和线程
生活中我们得现有进程
1.有一片地煤场,有很多煤,这就是进程了,煤场进程。
用车将煤从一个地方运到另一个地方,这就是线程。
2.运动场。
运动场是进程。划分区域:里面有跑步的,有扔铅球的,有跳远的。
跑步从一个地方跑到另一个地方就是线程,
线程就一个吗?不是。还有跳高从一个到另个,跳远都在运行,这就是多个线程。
游泳池就是进程。一个人游泳就是一个线程,另一个人游泳就是另一个线程。
3.计算机360安全卫士
电脑体检
电脑清理
一个360进程里面有多个线程(体检、杀毒、清理)。
二、多线程技术解决什么问题?
一个线程比如只有在体检后才可以查杀,比较慢啊
开启多个线程,那么我就可以在体检的同时在查杀。
多个线程好处:可以使代码同时执行。
所以多线程技术解决:解决多部分代码同时执行的需求,合理使用CPU资源。最大的好处:用户体验好些。你运行你的不影响我的。
三、是否能提高效率吗?
同时开启体检、查毒会遇到死机的情况。
计算机当中负责内存的运算就是中央处理器cpu。
cpu在处理体检的线程,是不能做杀毒动作的。那为什么我看到杀毒了呀。当你看到杀毒的时候就不会体检了。
所以CPU在某一个时间段只能处理一条线程。你看的现象同时执行--》CPU是以时间片段的形式做着非常快速的切换。给你的看的是同时执行。
但是应用程序一旦开多了就慢了。cpu在多个线程中切换,当然慢了。
死机了:假死的状态。好半天才有反应。
习惯性刷新:目的:看启动速度。应为cpu还没有处理到你的刷新呢。如果你刷新一下完事了是不是就是没到你呢?
开启多线程并不是一定会提高线程。
开启多线程合理运用。我cpu可以同时处理60个,那么你可以同时开启多线程,合理的使用资源。
总结:多线程仅仅是合理利用资源而已,并不一定提高效率。
四、多线程使用情况:开发时有没有同时执行的需求?
你执行你的,不影响我的,我没有必要在你执行完了再去执行。---》360。
Windows本身就是多线程的。

浙公网安备 33010602011771号