2:如何区别并行与并发
一、什么是并发?
并发:指应用能够交替执行不同的任务,其实并发有点类似于多线程的原理,多线程并非是同时执行多个任务,如果你开两个线程执行,就是在你几乎不可能察觉到的速度不断去切换这两个任务,以达到"同时执行效果",其实并不是的,只是计算机的速度太快,我们无法察觉到而已.
就类似于你,吃一口饭喝一口水,以正常速度来看,完全能够看的出来,当你把这个过程以n倍速度执行时..可以想象一下, 吃->喝....如此反复.
二、什么是并行?
并行:指应用能够同时执行不同的任务,例:吃饭的时候可以边吃饭边打电话,这两件事情可以同时执行
三、两者区别:一个是交替执行,一个是同时执行. 简而言之就是并发是多个事件在同一时间段执行,而并行是多个事件在同一时间点执行
四、例子
并发,就像一个人(cpu)喂2个孩子(程序),同一时间段轮换着每人喂一口,表面上两个孩子都在吃饭。并行,就是2个人喂2个孩子,两个孩子也同时在同一时刻在吃饭。
浙公网安备 33010602011771号