ブロッキングコレクションは、通常キューよりも多くパイルアップしています。次のシナリオでは、C#4.0でのブロッキングコレクションのパフォーマンス
- 私はコンシューマとして専用のスレッドを持っています。
プロデューサとして3つ以上の専用スレッド。
ノーマルキュー(Monitor.Enter ...)とブロッキングコレクションでチェックしました。
結果:
Both Queues are getting pile up (Obviously , Consumers < Producers)
通常のキューが自動的に何百何千ものと明らかに以上を増加し続けている& 20000や30000 後に増加しかし、コレクションをブロックし続けていないいくつかの点でクリアされます我々は明確な選択肢がないと同時に、私は生産者を制限したくない
いずれか1つの光をあげることができます..
できればコードを投稿する必要があります。また、「数千人」を意味するために「lakhs」を使用していますか?私はほとんどの英語の話者がその用語に精通しているとは思わない。 –
私はラークスがベーグルとサーモンのあいまいな言及だと思った。 – zmbq
ほとんどの作業キューのシナリオでは、作業を行うことはデキュー時間よりもはるかに重要です - 「作業を行う」ことが些細なものであれば、待ち行列に入れられない* 。ここでの問題は、単に「仕事をする」が追加の仕事を積み重ねるのにかかるよりも時間がかかるということだけではないと確信していますか?それは待ち行列の欠点ではありません... –