顺序、并发、串行、并行
# 顺序 sequential 【美/sɪˈkwenʃl/】 按顺序执行,上一个任务完成后,当前任务才能开始执行
# 并发 concurrent 【美/kənˈkɜːrənt/】 同时执行,无论上一个任务是否完成,当前任务都可以开始执行
A B 顺序执行的话,A 一定会比 B 先完成,而并发执行则不一定
# 串行 serial 【美/ˈsɪriəl/】 只有一个任务执行单元,物理上同一时间只能执行一个任务
# 并行 parallel 【美/ˈpærəlel/】 有多个任务执行单元,物理上同一时间可以多个任务一起执行
在任意时间点上,串行时必然只有一个任务在执行,而并行则不一定
并发 VS 并行
# 并发
一个处理器同时处理多个任务。逻辑上同时发生,微观上不是同时执行的。
比如:两个人用同一把铁锨轮流挖坑,一小时后,两个人各挖一个小一点的坑,要想挖两个大一点得坑一定会用两个小时。
# 并行
多个处理器或多核处理器同时处理多个任务,物理上的同时发生。
比如:两个人各拿一把铁锨在挖坑,一小时后,每人一个大坑

场景 | 理解 |
---|
你吃饭吃到一半,电话来了,你直到吃完了以后才去接 | 这说明你不支持并发也不支持并行 |
你吃饭吃到一半,电话来了,你停了下来接了电话,接完后继续吃饭 | 这说明你支持并发 |
你吃饭吃到一半,电话来了,你一边打电话一边吃饭 | 这说明你支持并行 |
参考 并发与并行的区别是什么? | |
单核CPU多任务 所有线程在同一个核上 串行,并发
多核CPU多任务 不同线程在不同核上执行 并行,并发
常见英文词汇
英文 | 音标 | 翻译 |
---|
concurrency | [kənˈkɜːrənsi] | n. [计] 并发性;同时发生 |
simultaneous | 英 [ˌsɪm(ə)lˈteɪniəs] 美 [ˌsaɪm(ə)lˈteɪniəs] | adj. 同时发生的,同步的 |
parallelism | 英 [ˈpærəlelɪzəm] 美 [ˈpærəlelɪzəm] | n. 平行;类似,对应 |
| | |
processor | [ˈprɑːsesər] | n. (计算机的)处理器 |
multiprocessor | 英 [ˌmʌltiˈprəʊsesə®] 美 [ˌmʌltiˈprɑːsesər; ˌmʌltiˈproʊsesər] | n. 多重处理器 |
multicore | 英 [ˌmʌltiˈkɔː®] | n. 多芯;多核心 |
| | |
logically | [ˈlɑːdʒɪkli] | adv. 逻辑上;合乎逻辑 |
physical | 英 [ˈfɪzɪk(ə)l] 美 [ˈfɪzɪk(ə)l] | 物理的,物理学的 |
| | |
processing | 英 [ˈprəʊsesɪŋ] 美 [ˈprɑːsesɪŋ] | n. 加工;处理;运算 |