并发(Concurrent) vs 并行(Parallel)

来自:https://vocus.cc/article/6513f799fd89780001dea11d

并发

多個事情在同一時間段內同時發生

并发的多个任务之间是互相抢占资源。

不断切换。

抢占CPU时间片。

并行

多個事情在同一個時間點上同時發生

并行的多个任务之间是不互相抢占资源。

四核四线程,四个任务同时跑。

再多一个就存在并发。

详细对比

特性 并发 (Concurrency)并行 (Parallelism)
核心概念在一个时间段内逻辑上同时处理多个任务。在一个时间点上物理上同时执行多个任务。
处理器要求单核或多核处理器都可以。至少需要多核处理器才能实现。
执行方式多个任务之间通过时间片轮转快速交替执行,宏观上看起来是同时的。多个任务被分配到不同的处理器核心上,真正地同时执行
比喻一个人一边吃饭一边打电话,但他只能交替进行,不能同时做两件事。两个人各自拿着一把铁锹,同时挖坑
目标提高资源的利用率,使程序看起来响应更快。提高处理速度和吞吐量。
滚动至顶部