0

MSDN の記事「PLINQ での注文の保存」には、次のように記載されています。

次の例では、ソース シーケンスで AsOrdered 演算子を使用して、既定の動作をオーバーライドします。これにより、Take メソッドは、条件に一致するソース シーケンス内の最初の 10 都市を確実に返します。

var orderedCities = (from city in cities.AsParallel().AsOrdered()
                     where city.Population > 10000
                     select city)
                       .Take(1000);

PLINQ クエリで注文された最初の 10 個より多い (または少ない) アイテムを返すことは可能ですか?

4

1 に答える 1

2

Take(1000)citiesで定義された条件を満たす最初の 1000 個の要素を返そうとしwhere city.Population > 10000ます。

要件を満たす十分な要素がない場合 (または、最初からコレクションに十分な要素がなかった場合)、受け取る要素が 1000未満になる可能性があります。ただし、 1001 個の要素を返そうとする
など、より多くの要素を具体的に要求しない限り、1000 個を超える要素を取得する方法はありません。Take(1001)

の詳細については、 MSDNTakeにアクセスしてください。

于 2013-03-12T11:39:28.640 に答える