C語言中文網 目錄
首頁 > Go語言教程 > Go語言并發 閱讀:3,245

并發和并行的區別

在講解并發概念時,總會涉及另外一個概念并行。下面讓我們來了解并發和并行之間的區別。
  • 并發(concurrency):把任務在不同的時間點交給處理器進行處理。在同一時間點,任務并不會同時運行。
  • 并行(parallelism):把每一個任務分配給每一個處理器獨立完成。在同一時間點,任務一定是同時運行。

兩個概念的區別是:任務是否同時執行。舉一個生活中的例子:打電話和吃飯。

吃飯時,電話來了,需要停止吃飯去接電話。電話接完后回來繼續吃飯,這個過程是并發執行。

吃飯時,電話來了,邊吃飯邊接電話。這個過程是并行執行。

GO 語言在 GOMAXPROCS 數量與任務數量相等時,可以做到并行執行,但一般情況下都是并發執行。

精美而實用的網站,提供C語言C++STLLinuxShellJavaGo語言等教程,以及socketGCCviSwing設計模式JSP等專題。

Copyright ?2011-2018 biancheng.net, 陜ICP備15000209號

底部Logo