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