一、核心区别:并发 (Concurrency) vs 并行 (Parallelism)
用最通俗的比喻来区分:
并发 (Concurrency):“一个人同时处理多件事”。
- 场景:你在做饭,一边煮汤(等待水开),一边切菜,一边回微信。
- 本质:在同一个时间段内,多个任务都在进展中,但在任意时刻,CPU 可能只在执行其中一个任务。它们通过快速切换上下文来制造“同时进行”的假象。
- 关键词:交替执行、时间片轮转、宏观同时微观串行。
- 目的:提高响应能力和资源利用率(避免 CPU 在等待 IO 时空闲)。
并行 (Parallelism):“多个人同时处理多件事”。
- 场景:你煮汤,你老婆切菜,你孩子回微信。
- 本质:在同一个时刻,多个任务真正同时在不同的计算单元(CPU 核心)上执行。
- 关键词:物理同时、多核、真正的同步执行。
- 目的:提高吞吐量和计算速度。
