并發(fā):多個(gè)任務(wù)在同一個(gè) CPU 核上,按細(xì)分的時(shí)間片輪流(交替)執(zhí)行,從邏輯上來看那些任務(wù)是同時(shí)執(zhí)行。
并行:?jiǎn)挝粫r(shí)間內(nèi),多個(gè)處理器或多核處理器同時(shí)處理多個(gè)任務(wù),是真正意義上的“同時(shí)進(jìn)行”。
串行:有n個(gè)任務(wù),由一個(gè)線程按順序執(zhí)行。由于任務(wù)、方法都在一個(gè)線程執(zhí)行所以不存在線程不安全情況,也就不存在臨界區(qū)的問題。
做一個(gè)形象的比喻:
并發(fā) = 倆個(gè)人用一臺(tái)電腦。
并行 = 倆個(gè)人分配了倆臺(tái)電腦。
串行 = 倆個(gè)人排隊(duì)使用一臺(tái)電腦。