并发与并行的区别
如果一个系统中支持两个或者多个动作同时存在,那么我们称这个系统为并行系统,
如果一个系统中支持两个或者多个动作同时执行,那么我们称这个系统为并发系统。
上述描述中我们可以看出两个区别在于存在关键字
如果我们系统中编写多个线程或者进程,在单核处理器cpu下,同时驻留内存,不断切换cpu交替执行,那么我们称它为并发,且这种情况下只能会出现并发,没法并行。
如果在多核处理器中,每个线程或者进程获得独自的cpu处理器进行同时执行,那么我们称之并 行,如果每个线程或者进程在多核处理器中 仍然不能获得独自处理器,需要跟其他线程或者进程竞争抢占资源,那么我们也把它称之为并发
由此可以看出并行只是并发的一个子集。