【C#】【スレッド】BlockingCollection ~ Producer-Consumerパターン ~

■ はじめに

 * C# で、 Producer-Consumerパターン を実装することを調べてたら
   「BlockingCollection」がでてきたので、纏める

Producer-Consumer パターンについて

 * Producer-Consumerパターン については、以下の関連記事を参照。
https://blogs.yahoo.co.jp/dk521123/32914080.html

■ BlockingCollection

 * 複数スレッドから同時にアクセス可能な先入れ先出しコレクション(キュー)

使用上の注意

 * BlockingCollection は、.NET4.0以降のAPIなので、
   .NET3.5以前のプロジェクトには使用できない
.NET3.5以前では、どうする?
 * Queue<T>クラスで独自実装する (ConcurrentQueue<T>コレクションも、.NET4.0以降なので使用できない)
 * 詳細は、以下のサイトを参照。
http://www.atmarkit.co.jp/ait/articles/1801/31/news023.html


関連記事

デザインパターン / マルチスレッド

デザインパターン / マルチスレッド の分類 ~目次~
https://blogs.yahoo.co.jp/dk521123/34195603.html
Producer-Consumer パターン
https://blogs.yahoo.co.jp/dk521123/32914080.html

C# / コレクション

List (リスト)
https://blogs.yahoo.co.jp/dk521123/22295813.html
Dictionary (ディクショナリ)
https://blogs.yahoo.co.jp/dk521123/21978660.html
Concurrentコレクション ~ スレッドセーフなコレクション ~
https://blogs.yahoo.co.jp/dk521123/38017014.html