**並行処理(concurent processing)あるいは並行性(concurrency)**は一つの処理を独立した複数のコンポーネントに分割し、コンポーネント間で安全にデータを共有しながら計算することを意味する 多くの言語では並行性をライブラリを介して提供し、OSレベルのスレッドによってロックを使ってデータを共有するものが多い Goの並行性のモデルは上記とは異なり、**CSP(Communicating Sequential Processes)**に基づいている 12.1 並行性をいつ利用するべきか 12.2 ゴルーチン 12.3 チャネル 12.4 select 12.5 並行処理のベストプラクティスとパターン 12.6 チャネルの代わりにミューテックスを使うべきとき 12.7 sync/atomic