私は、CCR (Concurrency And Coordination Runtime) について頭を悩ませ、学ぶ価値があるかどうかを確認しようとしています。
私は主に Vb.net でプログラミングを行っており、CCR を使用するほとんどの例では Yield キーワードを使用しています。
CCR を使用する上で、Yield はどの程度重要ですか? 回避策はありますか? VB.net は Yield コマンドを取得しますか? (そうでない場合、なぜそうしないのですか?)
はい、イテレータ ブロック (yield ステートメントで示される) は、私が理解している CCR にとって非常に重要です。これらは、読み取り可能な非同期ワークフローを可能にするものです。
Parallel Extensions はもうご覧になりましたか? そうでない場合は、CCR の前にそれを試してみます。他のことは別として、VB.NET に適している可能性が高く、それが出てきたときに「メイン」の .NET 4.0 に含まれます。
yield キーワードは必須ではありませんが、CCR を使用するときに非常に簡単になります。ハンドラー メソッドでタスクを生成する必要があります。これは、プリミティブを使用するだけで実行できますが、それほどエレガントではありません。VB.NET で記述された CCR コードを見たことがありませんが、IEnumerable オブジェクトを返すための回避策があると思います (ただし、VB.NET を記述してから長い時間が経過しているため、これを確認することはできません)。 . 前回聞いたときは、VB.NET 10 が yield キーワードと同等のものを取得する可能性がかなりありました。