并發(fā)和并行的區(qū)別:1、并發(fā)是把任務(wù)在不同的時間點交給處理器進(jìn)行處理,而并行是把每一個任務(wù)分配給每一個處理器獨立完成;2、并發(fā)中在同一時間點,任務(wù)并不會同時運(yùn)行,而并行中,在同一時間點,任務(wù)一定是同時運(yùn)行。
本教程操作環(huán)境:windows7系統(tǒng)、GO 1.18版本、Dell G3電腦。
了解并發(fā)概念時,總會涉及另外一個概念并行。下面讓我們來了解并發(fā)和并行之間的區(qū)別。
并發(fā)(concurrency):把任務(wù)在不同的時間點交給處理器進(jìn)行處理。在同一時間點,任務(wù)并不會同時運(yùn)行。
并行(parallelism):把每一個任務(wù)分配給每一個處理器獨立完成。在同一時間點,任務(wù)一定是同時運(yùn)行。
并發(fā)不是并行。并行是讓不同的代碼片段同時在不同的物理處理器上執(zhí)行。并行的關(guān)鍵是同時做很多事情,而并發(fā)是指同時管理很多事情,這些事情可能只做了一半就被暫停去做別的事情了。
在很多情況下,并發(fā)的效果比并行好,因為操作系統(tǒng)和硬件的總資源一般很少,但能支持系統(tǒng)同時做很多事情。這種“使用較少的資源做