5

たとえば、BlockingCollection.Take() と同じように、C# BlockingCollection<> を反復処理するときに要素がコレクションから取得されるかどうかは誰にもわかりませんか?

BlockingCollection<int> q = new BlockingCollection<int>();
[...]
foreach(int i in q)
{
    //does q still contain i?
}

ありがとう

編集: もちろん、私は BlockingCollection を意味していましたが、何らかの理由で BlockingQueue を頭に入れ、それを使用しました。

4

3 に答える 3

13

列挙子はBlockingCollection<T>コレクションからアイテムを削除しません。

ただし、DOESから返された列挙子は、コレクションから項目を削除します。BlockingCollection<T>.GetConsumingEnumerable()

于 2013-12-06T11:24:38.957 に答える