みなさん、並列処理、書いてますか? つらい、つらいよね、わかるよ。 ある部分は高速化のために並列で実行し、ある部分は整合性を取るために直列で実行し、入力ジョブのキューが膨大にならないように流量を調節しながらジョブを入力して……。こんなプログラムをバグなく書くなんて、それはもう大変で、コーナーケースからぼろが出てくる出てくるって感じになります。 さて、そんな面倒な並列プログラミングを支えてくれるライブラリが、結構前(2014 年の NuGet パッケージが存在している。概念自体は 2011 年からある?)から提供されています。名前だけはご存知(個人的な感想) System.Threading.Tasks.Dataflow、通称 TPL Dataflow です。 .NET Core では標準で含まれていますし、そうでない環境では NuGet からダウンロードできます。強いですね。 公式ドキュメ