并发操作之——并发、并行
并发操作
并发操作之——并发、并行
前言
并发操作之——并发、并行。
一、什么是并发?什么是并行?
并发:
一台处理器上同时处理任务, 这个同时实际上是交替处理多个任务,程序中可以同时拥有两个或者多个线程,当有多个线程在操作时,如果系统只有一个CPU,则它根本不可能真正同时进行一个以上的线程,它只能把CPU运行时间划分成若干个时间段,再将时间段分配给各个线程执行。
并行:
多个CPU上同时处理多个任务,一个CPU执行一个进程时,另一个CPU可以执行另一个进程,两个进程互不抢占CPU资源,可以同时进行。
并发指在一段时间内宏观上去处理多个任务。 并行指同一个时刻,多个任务确实真的同时运行。
二、并发和并行举例
一个项目经理A和3个程序B C D的故事 单线程 并发:A给B讲完需求,B自己去实现,期间A继续给C和D讲,不用等待某个程序员去完成,期间项目经理没空闲下来 并行:直接找3个项目经理分别分配给3个程序员
总结
并发实际上还是一个任务一个任务的去执行只不过CPU给不同的任务分配了时间段,并行是多个CPU同时的在执行任务。