Go 部落格
併發不是並行
如果說大多數人對 Go 有一個瞭解的話,那就是它為併發而設計。任何 Go 的介紹都離不開對其 goroutine 和 channel 的演示。
但是當人們聽到“併發”這個詞時,他們常常會想到“並行”,這是一個相關但截然不同的概念。在程式設計中,併發是獨立執行程序的**組合**,而並行是(可能相關的)計算的**同時執行**。併發是關於**處理**很多事情。並行是關於**同時做**很多事情。
為了澄清這種混淆,Rob Pike 在 Heroku 的 Waza 會議上做了一個題為 “併發不是並行” 的演講,演講的影片錄影在幾個月前釋出了。
幻燈片可在 go.dev/talks 找到(使用左右箭頭鍵導航)。
下一篇文章:go fmt 你的程式碼
上一篇文章:App Engine SDK 和工作區 (GOPATH)
部落格索引