并行和并发有什么区别?
发布于 2022-09-20 23:33:28
关注者
0
被浏览
21
5 个回答
-
并行类似于高速路,有好几个车道,车可以开在任意车道前往目的地 并发类似于下高速,只开了一个口,好几个车道的车都得从这出
-
并行,同一时间运行的数量;并发,单位时间内运行的数量
-
并行是指多个线程同时进行,并发是指多个线程抢占式执行,但是在同一个时间片段内只有一个线程在执行,哪个线程抢到这个时间片就运行,实际不停地切换线程,只是这个时间片很短,让人觉得多个线程都在执行。最简单的例子就是多个CPU同时运行多个任务就是并行,而单CPU运行多个任务就是并发
-
并发,是同一时间多个线程对同一资源进行访问。并行是同时实现多个工作流程,最后进行汇总。
-
目的都是最大优化cpu使用率 并行指同一时刻,有多条指令在多个处理器上同时执行 并发指在同一时刻只有一条指令执行,但多个进程指令被快速轮换执行,使得在宏观上具有多个进程同时执行的效果,但是微观上并不是同时执行,只是把时间分成若干段,使多个进程快速交替执行 并行在多处理器系统中存在,而并发可以在单处理器和多处理器系统中都存在,并发能够在单处理器系统中存在是因为并发是并行的假象,并行要求程序能够同时执行多个操作,而并发只是要求程序假装同时执行多个操作(每个小时间片执行一个操作,多个操作快速切换执行)