并行处理怎么通过生活例子理解

并行处理怎么通过生活例子理解,第1张

用吃饭举例子:

吃饭吃了一半,电话来了,你一直吃饭吃完了以后才去接,这说明你不支持并发也不支持并行。

吃饭吃了一半,电话来了,你停下来接了电话,接完继续吃饭,说明你支持并发。(此处不强调在时间点上同时进行,重点是一段时间内可以交替执行)。

吃饭吃了一半,你一边接电话一边吃饭,这说明你支持并行。

此时不难发现,并行概念可以归纳为并发概念的一个子集并发的关键在于你有处理多个任务的能力,不一定要同时,只高模信要能交替执行。

总结如下:

比如单CPU核心下执行多线程并非是同时执行多个戚轮任务,如果你开两个线程执行,就是在你几乎不可察觉的速度不断地去切换这两个任务,已达到”同时执行的效果”。其码吵实并没有同时执行,只是计算机执行速度太快我们无法察觉而已。

并行的关键是你有同时处理多个任务的能力。比如依旧是上面的例子。如果此时多加一个CUP。CUP1执行线程1,CUP2执行线程2。那么此时程序就是真正意义的并行。

并发性是指两个或多个事件在同一时间间隔内发生。

并行性是指两个或多个事件在同一时刻发生。

二者的概念:

幷发的实质是一个物理CPU(也皮世灶可以多个物理CPU)在若干道程序之间多路复用,并发性燃扮是对有限物理资源强制行驶多用户共享以提高效率。

实现幷发技术的关键之一是如何对系统内的多个活动(进程)进行切换。

并行性指的是两个或两个以上的事件或活动在同一时刻发生。在多道程序环境下,并行性使多个程序同一时刻可在不同CPU上同时执行。

并行性和并发性的区别:

并行的时件或者活动一定是幷发的,但是反之并发的时间或者活动未必是并行的。并行性是并发性的特例,而并发性是并行性的拓展。

下面和你说说我返族学的:系统在运行时很多时候要读取外存 *** 做,这些 *** 做和CPU运算速度差近百倍,这个时候CPU可以让I/O处理数据的读和写,CPU可以切换到别的进程做运算,虽然切换一个要大到几千条指令,但这和等I/O *** 做完成相比还是节省非常多的时间的.


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12322470.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存