今回は、Barrierクラスについて。 Barrierクラスは、.NET 4.0からSystem.Threading名前空間に追加されたクラスです。 Barrierクラスは、並行処理を複数のフェーズ毎に協調動作させる場合に利用します。 つまり、N個のスレッドを特定のフェーズ毎に足踏みを揃えて、次のフェーズに進むようにします。 Barrierでは、複数のスレッドが前進するためにバリアのところに全員が揃わないといけません。 一見、CountdownEventと同じように見えますが、以下の違いがあります。 CountdownEventは、特定のイベントが終わったという事を待つために利用するが、Barrierは仲間のスレッドを待つために利用する。 CountdownEventは、Signalを呼ぶことでカウンタをデクリメントします。 CountdownEvent.Waitを呼んでいるスレッドは、そ