BlockingCollection<T> Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Fournit des fonctions bloquantes et englobantes pour les collections thread-safe qui implémentent IProducerConsumerCollection<T>.
generic <typename T>
public ref class BlockingCollection : IDisposable, System::Collections::Generic::IEnumerable<T>, System::Collections::Generic::IReadOnlyCollection<T>, System::Collections::ICollection
generic <typename T>
public ref class BlockingCollection : IDisposable, System::Collections::Generic::IEnumerable<T>, System::Collections::ICollection
public class BlockingCollection<T> : IDisposable, System.Collections.Generic.IEnumerable<T>, System.Collections.Generic.IReadOnlyCollection<T>, System.Collections.ICollection
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public class BlockingCollection<T> : IDisposable, System.Collections.Generic.IEnumerable<T>, System.Collections.Generic.IReadOnlyCollection<T>, System.Collections.ICollection
[System.Runtime.InteropServices.ComVisible(false)]
public class BlockingCollection<T> : IDisposable, System.Collections.Generic.IEnumerable<T>, System.Collections.ICollection
[System.Runtime.InteropServices.ComVisible(false)]
public class BlockingCollection<T> : IDisposable, System.Collections.Generic.IEnumerable<T>, System.Collections.Generic.IReadOnlyCollection<T>, System.Collections.ICollection
public class BlockingCollection<T> : IDisposable, System.Collections.Generic.IEnumerable<T>, System.Collections.ICollection
type BlockingCollection<'T> = class
interface seq<'T>
interface IEnumerable
interface IReadOnlyCollection<'T>
interface ICollection
interface IDisposable
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
type BlockingCollection<'T> = class
interface seq<'T>
interface IEnumerable
interface IReadOnlyCollection<'T>
interface ICollection
interface IDisposable
[<System.Runtime.InteropServices.ComVisible(false)>]
type BlockingCollection<'T> = class
interface seq<'T>
interface ICollection
interface IEnumerable
interface IDisposable
[<System.Runtime.InteropServices.ComVisible(false)>]
type BlockingCollection<'T> = class
interface seq<'T>
interface IEnumerable
interface ICollection
interface IDisposable
interface IReadOnlyCollection<'T>
type BlockingCollection<'T> = class
interface seq<'T>
interface ICollection
interface IEnumerable
interface IDisposable
Public Class BlockingCollection(Of T)
Implements ICollection, IDisposable, IEnumerable(Of T), IReadOnlyCollection(Of T)
Public Class BlockingCollection(Of T)
Implements ICollection, IDisposable, IEnumerable(Of T)
Paramètres de type
- T
Type des éléments de la collection.
- Héritage
-
BlockingCollection<T>
- Attributs
- Implémente
Exemples
L’exemple suivant montre comment ajouter et prendre des éléments simultanément à partir d’une collection bloquante :
using System;
using System.Collections.Concurrent;
using System.Threading;
using System.Threading.Tasks;
class BlockingCollectionDemo
{
static async Task Main()
{
await AddTakeDemo.BC_AddTakeCompleteAdding();
TryTakeDemo.BC_TryTake();
FromToAnyDemo.BC_FromToAny();
await ConsumingEnumerableDemo.BC_GetConsumingEnumerable();
Console.WriteLine("Press any key to exit.");
Console.ReadKey();
}
}
class AddTakeDemo
{
// Demonstrates:
// BlockingCollection<T>.Add()
// BlockingCollection<T>.Take()
// BlockingCollection<T>.CompleteAdding()
public static async Task BC_AddTakeCompleteAdding()
{
using (BlockingCollection<int> bc = new BlockingCollection<int>())
{
// Spin up a Task to populate the BlockingCollection
Task t1 = Task.Run(() =>
{
bc.Add(1);
bc.Add(2);
bc.Add(3);
bc.CompleteAdding();
});
// Spin up a Task to consume the BlockingCollection
Task t2 = Task.Run(() =>
{
try
{
// Consume the BlockingCollection
while (true) Console.WriteLine(bc.Take());
}
catch (InvalidOperationException)
{
// An InvalidOperationException means that Take() was called on a completed collection
Console.WriteLine("That's All!");
}
});
await Task.WhenAll(t1, t2);
}
}
}
class TryTakeDemo
{
// Demonstrates:
// BlockingCollection<T>.Add()
// BlockingCollection<T>.CompleteAdding()
// BlockingCollection<T>.TryTake()
// BlockingCollection<T>.IsCompleted
public static void BC_TryTake()
{
// Construct and fill our BlockingCollection
using (BlockingCollection<int> bc = new BlockingCollection<int>())
{
int NUMITEMS = 10000;
for (int i = 0; i < NUMITEMS; i++) bc.Add(i);
bc.CompleteAdding();
int outerSum = 0;
// Delegate for consuming the BlockingCollection and adding up all items
Action action = () =>
{
int localItem;
int localSum = 0;
while (bc.TryTake(out localItem)) localSum += localItem;
Interlocked.Add(ref outerSum, localSum);
};
// Launch three parallel actions to consume the BlockingCollection
Parallel.Invoke(action, action, action);
Console.WriteLine("Sum[0..{0}) = {1}, should be {2}", NUMITEMS, outerSum, ((NUMITEMS * (NUMITEMS - 1)) / 2));
Console.WriteLine("bc.IsCompleted = {0} (should be true)", bc.IsCompleted);
}
}
}
class FromToAnyDemo
{
// Demonstrates:
// Bounded BlockingCollection<T>
// BlockingCollection<T>.TryAddToAny()
// BlockingCollection<T>.TryTakeFromAny()
public static void BC_FromToAny()
{
BlockingCollection<int>[] bcs = new BlockingCollection<int>[2];
bcs[0] = new BlockingCollection<int>(5); // collection bounded to 5 items
bcs[1] = new BlockingCollection<int>(5); // collection bounded to 5 items
// Should be able to add 10 items w/o blocking
int numFailures = 0;
for (int i = 0; i < 10; i++)
{
if (BlockingCollection<int>.TryAddToAny(bcs, i) == -1) numFailures++;
}
Console.WriteLine("TryAddToAny: {0} failures (should be 0)", numFailures);
// Should be able to retrieve 10 items
int numItems = 0;
int item;
while (BlockingCollection<int>.TryTakeFromAny(bcs, out item) != -1) numItems++;
Console.WriteLine("TryTakeFromAny: retrieved {0} items (should be 10)", numItems);
}
}
class ConsumingEnumerableDemo
{
// Demonstrates:
// BlockingCollection<T>.Add()
// BlockingCollection<T>.CompleteAdding()
// BlockingCollection<T>.GetConsumingEnumerable()
public static async Task BC_GetConsumingEnumerable()
{
using (BlockingCollection<int> bc = new BlockingCollection<int>())
{
// Kick off a producer task
var producerTask = Task.Run(async () =>
{
for (int i = 0; i < 10; i++)
{
bc.Add(i);
Console.WriteLine($"Producing: {i}");
await Task.Delay(100); // sleep 100 ms between adds
}
// Need to do this to keep foreach below from hanging
bc.CompleteAdding();
});
// Now consume the blocking collection with foreach.
// Use bc.GetConsumingEnumerable() instead of just bc because the
// former will block waiting for completion and the latter will
// simply take a snapshot of the current state of the underlying collection.
foreach (var item in bc.GetConsumingEnumerable())
{
Console.WriteLine($"Consuming: {item}");
}
await producerTask; // Allow task to complete cleanup
}
}
}
open System
open System.Collections.Concurrent
open System.Threading
open System.Threading.Tasks
module AddTakeDemo =
// Demonstrates:
// BlockingCollection<T>.Add()
// BlockingCollection<T>.Take()
// BlockingCollection<T>.CompleteAdding()
let blockingCollectionAddTakeCompleteAdding () =
task {
use bc = new BlockingCollection<int>()
// Spin up a Task to populate the BlockingCollection
let t1 =
task {
bc.Add 1
bc.Add 2
bc.Add 3
bc.CompleteAdding()
}
// Spin up a Task to consume the BlockingCollection
let t2 =
task {
try
// Consume consume the BlockingCollection
while true do
printfn $"{bc.Take()}"
with :? InvalidOperationException ->
// An InvalidOperationException means that Take() was called on a completed collection
printfn "That's All!"
}
let! _ = Task.WhenAll(t1, t2)
()
}
module TryTakeDemo =
// Demonstrates:
// BlockingCollection<T>.Add()
// BlockingCollection<T>.CompleteAdding()
// BlockingCollection<T>.TryTake()
// BlockingCollection<T>.IsCompleted
let blockingCollectionTryTake () =
// Construct and fill our BlockingCollection
use bc = new BlockingCollection<int>()
let NUMITEMS = 10000;
for i = 0 to NUMITEMS - 1 do
bc.Add i
bc.CompleteAdding()
let mutable outerSum = 0
// Delegate for consuming the BlockingCollection and adding up all items
let action =
Action(fun () ->
let mutable localItem = 0
let mutable localSum = 0
while bc.TryTake &localItem do
localSum <- localSum + localItem
Interlocked.Add(&outerSum, localSum)
|> ignore)
// Launch three parallel actions to consume the BlockingCollection
Parallel.Invoke(action, action, action)
printfn $"Sum[0..{NUMITEMS}) = {outerSum}, should be {((NUMITEMS * (NUMITEMS - 1)) / 2)}"
printfn $"bc.IsCompleted = {bc.IsCompleted} (should be true)"
module FromToAnyDemo =
// Demonstrates:
// Bounded BlockingCollection<T>
// BlockingCollection<T>.TryAddToAny()
// BlockingCollection<T>.TryTakeFromAny()
let blockingCollectionFromToAny () =
let bcs =
[|
new BlockingCollection<int>(5) // collection bounded to 5 items
new BlockingCollection<int>(5) // collection bounded to 5 items
|]
// Should be able to add 10 items w/o blocking
let mutable numFailures = 0;
for i = 0 to 9 do
if BlockingCollection<int>.TryAddToAny(bcs, i) = -1 then
numFailures <- numFailures + 1
printfn $"TryAddToAny: {numFailures} failures (should be 0)"
// Should be able to retrieve 10 items
let mutable numItems = 0
let mutable item = 0
while BlockingCollection<int>.TryTakeFromAny(bcs, &item) <> -1 do
numItems <- numItems + 1
printfn $"TryTakeFromAny: retrieved {numItems} items (should be 10)"
module ConsumingEnumerableDemo =
// Demonstrates:
// BlockingCollection<T>.Add()
// BlockingCollection<T>.CompleteAdding()
// BlockingCollection<T>.GetConsumingEnumerable()
let blockingCollectionGetConsumingEnumerable () =
task {
use bc = new BlockingCollection<int>()
// Kick off a producer task
let producerTask =
task {
for i = 0 to 9 do
bc.Add i
printfn $"Producing: {i}"
do! Task.Delay 100 // sleep 100 ms between adds
// Need to do this to keep foreach below from hanging
bc.CompleteAdding()
}
// Now consume the blocking collection with foreach.
// Use bc.GetConsumingEnumerable() instead of just bc because the
// former will block waiting for completion and the latter will
// simply take a snapshot of the current state of the underlying collection.
for item in bc.GetConsumingEnumerable() do
printfn $"Consuming: {item}"
do! producerTask // Allow task to complete cleanup
}
let main =
task {
do! AddTakeDemo.blockingCollectionAddTakeCompleteAdding ()
TryTakeDemo.blockingCollectionTryTake ()
FromToAnyDemo.blockingCollectionFromToAny ()
do! ConsumingEnumerableDemo.blockingCollectionGetConsumingEnumerable ()
printfn "Press any key to exit."
Console.ReadKey(true) |> ignore
}
main.Wait()
Imports System.Threading.Tasks
Imports System.Collections.Concurrent
Imports System.Threading
Class BlockingCollectionDemo
Shared Sub Main()
AddTakeDemo.BC_AddTakeCompleteAdding()
TryTakeDemo.BC_TryTake()
ToAnyDemo.BC_ToAny()
ConsumingEnumerableDemo.BC_GetConsumingEnumerable()
' Keep the console window open in debug mode
Console.WriteLine("Press any key to exit.")
Console.ReadKey()
End Sub
End Class
Class AddTakeDemo
' Demonstrates:
' BlockingCollection<T>.Add()
' BlockingCollection<T>.Take()
' BlockingCollection<T>.CompleteAdding()
Shared Sub BC_AddTakeCompleteAdding()
Using bc As New BlockingCollection(Of Integer)()
' Spin up a Task to populate the BlockingCollection
Using t1 As Task = Task.Factory.StartNew(
Sub()
bc.Add(1)
bc.Add(2)
bc.Add(3)
bc.CompleteAdding()
End Sub)
' Spin up a Task to consume the BlockingCollection
Using t2 As Task = Task.Factory.StartNew(
Sub()
Try
' Consume the BlockingCollection
While True
Console.WriteLine(bc.Take())
End While
Catch generatedExceptionName As InvalidOperationException
' An InvalidOperationException means that Take() was called on a completed collection
Console.WriteLine("That's All!")
End Try
End Sub)
Task.WaitAll(t1, t2)
End Using
End Using
End Using
End Sub
End Class
'Imports System.Collections.Concurrent
'Imports System.Threading
'Imports System.Threading.Tasks
Class TryTakeDemo
' Demonstrates:
' BlockingCollection<T>.Add()
' BlockingCollection<T>.CompleteAdding()
' BlockingCollection<T>.TryTake()
' BlockingCollection<T>.IsCompleted
Shared Sub BC_TryTake()
' Construct and fill our BlockingCollection
Using bc As New BlockingCollection(Of Integer)()
Dim NUMITEMS As Integer = 10000
For i As Integer = 0 To NUMITEMS - 1
bc.Add(i)
Next
bc.CompleteAdding()
Dim outerSum As Integer = 0
' Delegate for consuming the BlockingCollection and adding up all items
Dim action As Action =
Sub()
Dim localItem As Integer
Dim localSum As Integer = 0
While bc.TryTake(localItem)
localSum += localItem
End While
Interlocked.Add(outerSum, localSum)
End Sub
' Launch three parallel actions to consume the BlockingCollection
Parallel.Invoke(action, action, action)
Console.WriteLine("Sum[0..{0}) = {1}, should be {2}", NUMITEMS, outerSum, ((NUMITEMS * (NUMITEMS - 1)) / 2))
Console.WriteLine("bc.IsCompleted = {0} (should be true)", bc.IsCompleted)
End Using
End Sub
End Class
'Imports System.Threading.Tasks
'Imports System.Collections.Concurrent
' Demonstrates:
' Bounded BlockingCollection<T>
' BlockingCollection<T>.TryAddToAny()
' BlockingCollection<T>.TryTakeFromAny()
Class ToAnyDemo
Shared Sub BC_ToAny()
Dim bcs As BlockingCollection(Of Integer)() = New BlockingCollection(Of Integer)(1) {}
bcs(0) = New BlockingCollection(Of Integer)(5)
' collection bounded to 5 items
bcs(1) = New BlockingCollection(Of Integer)(5)
' collection bounded to 5 items
' Should be able to add 10 items w/o blocking
Dim numFailures As Integer = 0
For i As Integer = 0 To 9
If BlockingCollection(Of Integer).TryAddToAny(bcs, i) = -1 Then
numFailures += 1
End If
Next
Console.WriteLine("TryAddToAny: {0} failures (should be 0)", numFailures)
' Should be able to retrieve 10 items
Dim numItems As Integer = 0
Dim item As Integer
While BlockingCollection(Of Integer).TryTakeFromAny(bcs, item) <> -1
numItems += 1
End While
Console.WriteLine("TryTakeFromAny: retrieved {0} items (should be 10)", numItems)
End Sub
End Class
'Imports System.Threading.Tasks
'Imports System.Collections.Concurrent
' Demonstrates:
' BlockingCollection<T>.Add()
' BlockingCollection<T>.CompleteAdding()
' BlockingCollection<T>.GetConsumingEnumerable()
Class ConsumingEnumerableDemo
Shared Sub BC_GetConsumingEnumerable()
Using bc As New BlockingCollection(Of Integer)()
' Kick off a producer task
Task.Factory.StartNew(
Sub()
For i As Integer = 0 To 9
bc.Add(i)
' sleep 100 ms between adds
Thread.Sleep(100)
Next
' Need to do this to keep foreach below from not responding.
bc.CompleteAdding()
End Sub)
' Now consume the blocking collection with foreach.
' Use bc.GetConsumingEnumerable() instead of just bc because the
' former will block waiting for completion and the latter will
' simply take a snapshot of the current state of the underlying collection.
For Each item In bc.GetConsumingEnumerable()
Console.WriteLine(item)
Next
End Using
End Sub
End Class
Remarques
BlockingCollection<T> est une classe de collection thread-safe qui fournit les éléments suivants :
Implémentation du modèle producteur/consommateur ; BlockingCollection<T> est un wrapper pour l’interface IProducerConsumerCollection<T> .
Ajout et suppression simultanés d’éléments de plusieurs threads avec les Add méthodes et Take .
Collection délimitée qui bloque Add et Take fonctionne lorsque la collection est pleine ou vide.
Annulation d’opérations Add ou Take à l’aide d’un CancellationToken objet dans la TryAdd méthode ou TryTake .
Important
Ce type implémente l'interface IDisposable. Une fois que vous avez fini d’utiliser le type, vous devez le supprimer directement ou indirectement. Pour supprimer directement le type Dispose, appelez sa méthode dans un bloc try
/catch
. Pour la supprimer indirectement, utilisez une construction de langage telle que using
(dans C#) ou Using
(dans Visual Basic). Pour plus d’informations, consultez la section « Utilisation d’un objet qui implémente IDisposable » dans la rubrique de l’interface IDisposable. Notez également que la Dispose() méthode n’est pas thread-safe. Tous les autres membres publics et protégés de BlockingCollection<T> sont thread-safe et peuvent être utilisés simultanément à partir de plusieurs threads.
IProducerConsumerCollection<T> représente une collection qui permet l’ajout et la suppression de données thread-safe. BlockingCollection<T>est utilisé comme wrapper pour un IProducerConsumerCollection<T> instance et permet de bloquer les tentatives de suppression de la collection jusqu’à ce que les données soient disponibles pour être supprimées. De même, vous pouvez créer un pour appliquer une BlockingCollection<T> limite supérieure au nombre d’éléments de données autorisés dans la IProducerConsumerCollection<T>collection ; les tentatives d’ajout à la collection peuvent alors bloquer jusqu’à ce que l’espace soit disponible pour stocker les éléments ajoutés. De cette manière, BlockingCollection<T> est similaire à une structure de données de file d’attente de blocage traditionnelle, sauf que le mécanisme de stockage de données sous-jacent est extrait en tant que IProducerConsumerCollection<T>.
BlockingCollection<T> prend en charge la délimitation et le blocage. La délimitation signifie que vous pouvez définir la capacité maximale de la collection. La délimitation est importante dans certains scénarios, car elle vous permet de contrôler la taille maximale de la collection en mémoire et empêche les threads de production de se déplacer trop loin devant les threads consommés. Plusieurs threads ou tâches peuvent ajouter des éléments à la collection simultanément. Si la collection atteint sa capacité maximale spécifiée, les threads de production se bloquent jusqu’à ce qu’un élément soit supprimé. Plusieurs consommateurs peuvent supprimer des éléments simultanément, et si la collection devient vide, les threads consommateur se bloquent jusqu’à ce qu’un producteur ajoute un élément. Un thread de production peut appeler la CompleteAdding méthode pour indiquer qu’aucun élément supplémentaire ne sera ajouté. Les consommateurs surveillent la propriété IsCompleted pour savoir quand la collection est vide et quand aucun autre élément ne sera ajouté.
Add et Take opérations sont généralement effectuées dans une boucle. Vous pouvez annuler une boucle en passant un CancellationToken objet à la TryAdd méthode ou TryTake , puis en vérifiant la valeur de la propriété du IsCancellationRequested jeton à chaque itération. Si la valeur est true
, il vous appartient de répondre à la demande d’annulation en nettoyant toutes les ressources et en quittant la boucle.
Lorsque vous créez un BlockingCollection<T> objet, vous pouvez spécifier non seulement la capacité limitée, mais également le type de collection à utiliser. Par exemple, vous pouvez spécifier un objet pour le ConcurrentQueue<T> comportement de premier entré, premier sorti (FIFO) ou un objet pour le ConcurrentStack<T> comportement du dernier entré, premier sorti (LIFO). Vous pouvez utiliser n’importe quelle classe de collection qui implémente l’interface IProducerConsumerCollection<T>. Le type de collection par défaut pour BlockingCollection<T> est ConcurrentQueue<T>.
Ne modifiez pas directement la collection sous-jacente. Utilisez des BlockingCollection<T> méthodes pour ajouter ou supprimer des éléments. L’objet BlockingCollection<T> peut être endommagé si vous modifiez directement la collection sous-jacente.
BlockingCollection<T> n’a pas été conçu avec l’accès asynchrone à l’esprit. Si votre application nécessite des scénarios de producteur/consommateur asynchrones, envisagez plutôt d’utiliser Channel<T> .
Constructeurs
BlockingCollection<T>() |
Initialise une nouvelle instance de la classe BlockingCollection<T> sans limite supérieure. |
BlockingCollection<T>(Int32) |
Initialise une nouvelle instance de la classe BlockingCollection<T> avec la limite supérieure spécifiée. |
BlockingCollection<T>(IProducerConsumerCollection<T>) |
Initialise une nouvelle instance de la classe BlockingCollection<T> sans limite supérieure et qui utilise le IProducerConsumerCollection<T> fourni comme magasin de données sous-jacent. |
BlockingCollection<T>(IProducerConsumerCollection<T>, Int32) |
Initialise une nouvelle instance de la classe BlockingCollection<T> avec la limite supérieure spécifiée et qui utilise le IProducerConsumerCollection<T> fourni comme magasin de données sous-jacent. |
Propriétés
BoundedCapacity |
Obtient la capacité limite de cette instance de BlockingCollection<T>. |
Count |
Obtient le nombre d'éléments contenus dans BlockingCollection<T>. |
IsAddingCompleted |
Obtient si ce BlockingCollection<T> a été marqué comme ne pouvant plus accepter d'ajout. |
IsCompleted |
Obtient si ce BlockingCollection<T> a été marqué comme ne pouvant plus accepter d'ajout et est vide. |
Méthodes
Add(T) |
Ajoute l'élément au BlockingCollection<T>. |
Add(T, CancellationToken) |
Ajoute l'élément au BlockingCollection<T>. |
AddToAny(BlockingCollection<T>[], T) |
Ajoute l'élément spécifié à l'une des instances de BlockingCollection<T> spécifiées. |
AddToAny(BlockingCollection<T>[], T, CancellationToken) |
Ajoute l'élément spécifié à l'une des instances de BlockingCollection<T> spécifiées. |
CompleteAdding() |
Marque les instances de BlockingCollection<T> comme n'acceptant plus d'ajouts. |
CopyTo(T[], Int32) |
Copie tous les éléments dans l'instance de BlockingCollection<T> dans un tableau compatible unidimensionnel, en commençant à l'index spécifié du tableau cible. |
Dispose() |
Libère toutes les ressources utilisées par l'instance actuelle de la classe BlockingCollection<T>. |
Dispose(Boolean) |
Libère les ressources utilisées par l’instance de BlockingCollection<T>. |
Equals(Object) |
Détermine si l'objet spécifié est égal à l'objet actuel. (Hérité de Object) |
GetConsumingEnumerable() |
Fournit un IEnumerable<T> de consommation pour les éléments de la collection. |
GetConsumingEnumerable(CancellationToken) |
Fournit un IEnumerable<T> de consommation pour les éléments de la collection. |
GetHashCode() |
Fait office de fonction de hachage par défaut. (Hérité de Object) |
GetType() |
Obtient le Type de l'instance actuelle. (Hérité de Object) |
MemberwiseClone() |
Crée une copie superficielle du Object actuel. (Hérité de Object) |
Take() |
Supprime un élément de BlockingCollection<T>. |
Take(CancellationToken) |
Supprime un élément de BlockingCollection<T>. |
TakeFromAny(BlockingCollection<T>[], T) |
Prend un élément de l'une des instances de BlockingCollection<T> spécifiées. |
TakeFromAny(BlockingCollection<T>[], T, CancellationToken) |
Prend un élément de l'une des instances de BlockingCollection<T> spécifiées tout en observant le jeton d'annulation spécifié. |
ToArray() |
Copie les éléments de l'instance de BlockingCollection<T> dans un nouveau tableau. |
ToString() |
Retourne une chaîne qui représente l'objet actuel. (Hérité de Object) |
TryAdd(T) |
Tente d'ajouter l'élément spécifié à BlockingCollection<T>. |
TryAdd(T, Int32) |
Tente d'ajouter l'élément spécifié à BlockingCollection<T> au cours de la période spécifiée. |
TryAdd(T, Int32, CancellationToken) |
Tente d'ajouter l'élément spécifié à BlockingCollection<T> au cours de la période spécifiée tout en observant un jeton d'annulation. |
TryAdd(T, TimeSpan) |
Tente d'ajouter l'élément spécifié à BlockingCollection<T>. |
TryAddToAny(BlockingCollection<T>[], T) |
Tente d'ajouter l'élément spécifié à l'une des instances de BlockingCollection<T> spécifiées. |
TryAddToAny(BlockingCollection<T>[], T, Int32) |
Tente d'ajouter l'élément spécifié à l'une des instances de BlockingCollection<T> spécifiées. |
TryAddToAny(BlockingCollection<T>[], T, Int32, CancellationToken) |
Tente d'ajouter l'élément spécifié à l'une des instances de BlockingCollection<T> spécifiées. |
TryAddToAny(BlockingCollection<T>[], T, TimeSpan) |
Tente d'ajouter l'élément spécifié à l'une des instances de BlockingCollection<T> spécifiées tout en observant le jeton d'annulation spécifié. |
TryTake(T) |
Tente de supprimer un élément de BlockingCollection<T>. |
TryTake(T, Int32) |
Tente de supprimer un élément de BlockingCollection<T> au cours de la période spécifiée. |
TryTake(T, Int32, CancellationToken) |
Tente de supprimer un élément de BlockingCollection<T> au cours de la période spécifiée tout en observant un jeton d'annulation. |
TryTake(T, TimeSpan) |
Tente de supprimer un élément de BlockingCollection<T> au cours de la période spécifiée. |
TryTakeFromAny(BlockingCollection<T>[], T) |
Tente de supprimer un élément de l'une des instances de BlockingCollection<T> spécifiées. |
TryTakeFromAny(BlockingCollection<T>[], T, Int32) |
Tente de supprimer un élément de l'une des instances de BlockingCollection<T> spécifiées. |
TryTakeFromAny(BlockingCollection<T>[], T, Int32, CancellationToken) |
Tente de supprimer un élément de l'une des instances de BlockingCollection<T> spécifiées. |
TryTakeFromAny(BlockingCollection<T>[], T, TimeSpan) |
Tente de supprimer un élément de l'une des instances de BlockingCollection<T> spécifiées. |
Implémentations d’interfaces explicites
ICollection.CopyTo(Array, Int32) |
Copie tous les éléments dans l'instance de BlockingCollection<T> dans un tableau compatible unidimensionnel, en commençant à l'index spécifié du tableau cible. |
ICollection.IsSynchronized |
Obtient une valeur indiquant si l’accès à ICollection est synchronisé (thread-safe). |
ICollection.SyncRoot |
Obtient un objet qui peut être utilisé pour synchroniser l’accès à ICollection. Cette propriété n'est pas prise en charge. |
IEnumerable.GetEnumerator() |
Fournit un IEnumerator pour les éléments de la collection. |
IEnumerable<T>.GetEnumerator() |
Fournit un IEnumerator<T> pour les éléments de la collection. |
Méthodes d’extension
ToFrozenDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Crée un FrozenDictionary<TKey,TValue> à partir d’une IEnumerable<T> fonction de sélecteur de clé en fonction de spécifiée. |
ToFrozenDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>) |
Crée un FrozenDictionary<TKey,TValue> à partir de IEnumerable<T> selon des fonctions de sélection de clé et de sélection d'élément spécifiées. |
ToFrozenSet<T>(IEnumerable<T>, IEqualityComparer<T>) |
Crée un FrozenSet<T> avec les valeurs spécifiées. |
ToImmutableArray<TSource>(IEnumerable<TSource>) |
Crée un tableau immuable à partir de la collection spécifiée. |
ToImmutableDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Construit un dictionnaire immuable à partir de la collection d’éléments existante, en appliquant une fonction de transformation aux clés source. |
ToImmutableDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Construit un dictionnaire immuable basé sur une transformation d’une séquence. |
ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>) |
Énumère et transforme une séquence et produit un dictionnaire immuable de son contenu. |
ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IEqualityComparer<TKey>) |
Énumère et transforme une séquence et produit un dictionnaire immuable de son contenu à l’aide du comparateur de clé spécifié. |
ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IEqualityComparer<TKey>, IEqualityComparer<TValue>) |
Énumère et transforme une séquence et produit un dictionnaire immuable de son contenu à l’aide des comparateurs de clé et de valeur spécifiés. |
ToImmutableHashSet<TSource>(IEnumerable<TSource>) |
Énumère une séquence et produit un ensemble immuable de hachage de son contenu. |
ToImmutableHashSet<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>) |
Énumère une séquence, produit un ensemble immuable de hachage de son contenu et utilise le comparateur d’égalité spécifié pour le type d’ensemble. |
ToImmutableList<TSource>(IEnumerable<TSource>) |
Énumère une séquence et produit une liste immuable de son contenu. |
ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>) |
Énumère et transforme une séquence et produit un dictionnaire trié immuable de son contenu. |
ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IComparer<TKey>) |
Énumère et transforme une séquence et produit un dictionnaire trié immuable de son contenu à l’aide du comparateur de clé spécifié. |
ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IComparer<TKey>, IEqualityComparer<TValue>) |
Énumère et transforme une séquence et produit un dictionnaire trié immuable de son contenu à l’aide des comparateurs de clé et de valeur spécifiés. |
ToImmutableSortedSet<TSource>(IEnumerable<TSource>) |
Énumère une séquence et produit un ensemble trié immuable de son contenu. |
ToImmutableSortedSet<TSource>(IEnumerable<TSource>, IComparer<TSource>) |
Énumère une séquence, produit un ensemble trié immuable de son contenu et utilise le comparateur spécifié. |
CopyToDataTable<T>(IEnumerable<T>) |
Retourne un DataTable qui contient des copies des objets DataRow, à partir d'un objet d'entrée IEnumerable<T> où le paramètre générique |
CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption) |
Copie les objets DataRow vers le DataTable spécifié, à partir d'un objet d'entrée IEnumerable<T> où le paramètre générique |
CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption, FillErrorEventHandler) |
Copie les objets DataRow vers le DataTable spécifié, à partir d'un objet d'entrée IEnumerable<T> où le paramètre générique |
Aggregate<TSource>(IEnumerable<TSource>, Func<TSource,TSource,TSource>) |
Applique une fonction d'accumulation sur une séquence. |
Aggregate<TSource,TAccumulate>(IEnumerable<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>) |
Applique une fonction d'accumulation sur une séquence. La valeur initiale spécifiée est utilisée comme valeur d'accumulation initiale. |
Aggregate<TSource,TAccumulate,TResult>(IEnumerable<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>, Func<TAccumulate,TResult>) |
Applique une fonction d'accumulation sur une séquence. La valeur initiale spécifiée est utilisée comme valeur d'accumulation initiale et la fonction spécifiée permet de sélectionner la valeur de résultat. |
AggregateBy<TSource,TKey,TAccumulate>(IEnumerable<TSource>, Func<TSource, TKey>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>, IEqualityComparer<TKey>) |
Fournit des fonctions bloquantes et englobantes pour les collections thread-safe qui implémentent IProducerConsumerCollection<T>. |
AggregateBy<TSource,TKey,TAccumulate>(IEnumerable<TSource>, Func<TSource, TKey>, Func<TKey,TAccumulate>, Func<TAccumulate,TSource,TAccumulate>, IEqualityComparer<TKey>) |
Fournit des fonctions bloquantes et englobantes pour les collections thread-safe qui implémentent IProducerConsumerCollection<T>. |
All<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Détermine si tous les éléments d'une séquence satisfont à une condition. |
Any<TSource>(IEnumerable<TSource>) |
Détermine si une séquence contient des éléments. |
Any<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Détermine si des éléments d'une séquence satisfont à une condition. |
Append<TSource>(IEnumerable<TSource>, TSource) |
Ajoute une valeur à la fin de la séquence. |
AsEnumerable<TSource>(IEnumerable<TSource>) |
Retourne l’entrée typée comme IEnumerable<T>. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>) |
Calcule la moyenne d'une séquence de valeurs Decimal obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Double>) |
Calcule la moyenne d'une séquence de valeurs Double obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) |
Calcule la moyenne d'une séquence de valeurs Int32 obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) |
Calcule la moyenne d'une séquence de valeurs Int64 obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>) |
Calcule la moyenne d'une séquence de valeurs Decimal nullables obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) |
Calcule la moyenne d'une séquence de valeurs Double nullables obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) |
Calcule la moyenne d'une séquence de valeurs Int32 nullables obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) |
Calcule la moyenne d'une séquence de valeurs Int64 nullables obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) |
Calcule la moyenne d'une séquence de valeurs Single nullables obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Single>) |
Calcule la moyenne d'une séquence de valeurs Single obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée. |
Cast<TResult>(IEnumerable) |
Effectue un cast des éléments d'un IEnumerable vers le type spécifié. |
Chunk<TSource>(IEnumerable<TSource>, Int32) |
Fractionne les éléments d’une séquence en blocs de taille au maximum |
Concat<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Concatène deux séquences. |
Contains<TSource>(IEnumerable<TSource>, TSource) |
Détermine si une séquence contient un élément spécifié à l'aide du comparateur d'égalité par défaut. |
Contains<TSource>(IEnumerable<TSource>, TSource, IEqualityComparer<TSource>) |
Détermine si une séquence contient un élément spécifié à l'aide du IEqualityComparer<T> indiqué. |
Count<TSource>(IEnumerable<TSource>) |
Retourne le nombre total d'éléments dans une séquence. |
Count<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Retourne un nombre qui représente les éléments de la séquence spécifiée qui satisfont à une condition. |
CountBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Fournit des fonctions bloquantes et englobantes pour les collections thread-safe qui implémentent IProducerConsumerCollection<T>. |
DefaultIfEmpty<TSource>(IEnumerable<TSource>) |
Retourne les éléments de la séquence spécifiée ou la valeur par défaut du paramètre de type dans une collection de singletons si la séquence est vide. |
DefaultIfEmpty<TSource>(IEnumerable<TSource>, TSource) |
Retourne les éléments de la séquence spécifiée ou la valeur indiquée dans une collection de singletons si la séquence est vide. |
Distinct<TSource>(IEnumerable<TSource>) |
Retourne des éléments distincts d'une séquence et utilise le comparateur d'égalité par défaut pour comparer les valeurs. |
Distinct<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>) |
Retourne des éléments distincts d'une séquence et utilise le IEqualityComparer<T> spécifié pour comparer les valeurs. |
DistinctBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Retourne des éléments distincts d’une séquence en fonction d’une fonction de sélecteur de clé spécifiée. |
DistinctBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Retourne des éléments distincts d’une séquence en fonction d’une fonction de sélecteur de clé spécifiée et à l’aide d’un comparateur spécifié pour comparer les clés. |
ElementAt<TSource>(IEnumerable<TSource>, Index) |
Retourne l'élément à une position d'index spécifiée dans une séquence. |
ElementAt<TSource>(IEnumerable<TSource>, Int32) |
Retourne l'élément à une position d'index spécifiée dans une séquence. |
ElementAtOrDefault<TSource>(IEnumerable<TSource>, Index) |
Retourne l’élément situé à un index spécifié dans une séquence ou une valeur par défaut si l’index est hors limites. |
ElementAtOrDefault<TSource>(IEnumerable<TSource>, Int32) |
Retourne l’élément situé à un index spécifié dans une séquence ou une valeur par défaut si l’index est hors limites. |
Except<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Produit la différence entre deux séquences à l'aide du comparateur d'égalité par défaut pour comparer les valeurs. |
Except<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Produit la différence entre deux séquences à l'aide du IEqualityComparer<T> spécifié pour comparer les valeurs. |
ExceptBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>) |
Produit la différence de jeu de deux séquences en fonction d’une fonction de sélecteur de clé spécifiée. |
ExceptBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Produit la différence de jeu de deux séquences en fonction d’une fonction de sélecteur de clé spécifiée. |
First<TSource>(IEnumerable<TSource>) |
Retourne le premier élément d'une séquence. |
First<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Retourne le premier élément d’une séquence à satisfaire à la condition spécifiée. |
FirstOrDefault<TSource>(IEnumerable<TSource>) |
Retourne le premier élément d’une séquence ou une valeur par défaut si la séquence ne contient aucun élément. |
FirstOrDefault<TSource>(IEnumerable<TSource>, TSource) |
Retourne le premier élément d’une séquence ou une valeur par défaut spécifiée si la séquence ne contient aucun élément. |
FirstOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Retourne le premier élément de la séquence à satisfaire à une condition ou une valeur par défaut si aucun élément correspondant n’est trouvé. |
FirstOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>, TSource) |
Retourne le premier élément de la séquence qui satisfait à une condition, ou une valeur par défaut spécifiée si aucun élément de ce type n’est trouvé. |
GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Regroupe les éléments d'une séquence selon la fonction de sélection de clé spécifiée. |
GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Regroupe les éléments d'une séquence selon la fonction de sélection de clé spécifiée et compare les clés à l'aide du comparateur indiqué. |
GroupBy<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>) |
Regroupe les éléments d'une séquence selon la fonction de sélection de clé spécifiée et projette les éléments de chaque groupe à l'aide de la fonction indiquée. |
GroupBy<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>) |
Regroupe les éléments d'une séquence selon une fonction de sélection de clé. Les clés sont comparées à l'aide d'un comparateur et les éléments de chaque groupe sont projetés à l'aide d'une fonction spécifique. |
GroupBy<TSource,TKey,TResult>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TKey,IEnumerable<TSource>,TResult>) |
Regroupe les éléments d'une séquence selon la fonction de sélection de clé spécifiée et crée une valeur de résultat à partir de chaque groupe et de la clé correspondante. |
GroupBy<TSource,TKey,TResult>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TKey,IEnumerable<TSource>,TResult>, IEqualityComparer<TKey>) |
Regroupe les éléments d'une séquence selon la fonction de sélection de clé spécifiée et crée une valeur de résultat à partir de chaque groupe et de la clé correspondante. Les clés sont comparées à l'aide d'un comparateur spécifié. |
GroupBy<TSource,TKey,TElement,TResult>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, Func<TKey,IEnumerable<TElement>,TResult>) |
Regroupe les éléments d'une séquence selon la fonction de sélection de clé spécifiée et crée une valeur de résultat à partir de chaque groupe et de la clé correspondante. Les éléments de chaque groupe sont projetés à l'aide d'une fonction spécifique. |
GroupBy<TSource,TKey,TElement,TResult>(IEnumerable<TSource>, Func<TSource, TKey>, Func<TSource,TElement>, Func<TKey,IEnumerable<TElement>, TResult>, IEqualityComparer<TKey>) |
Regroupe les éléments d'une séquence selon la fonction de sélection de clé spécifiée et crée une valeur de résultat à partir de chaque groupe et de la clé correspondante. Les valeurs de clé sont comparées à l'aide du comparateur spécifié et les éléments de chaque groupe sont projetés à l'aide d'une fonction spécifique. |
GroupJoin<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>) |
Met en corrélation les éléments de deux séquences en fonction de l'égalité des clés et regroupe les résultats. Le comparateur d'égalité par défaut est utilisé pour comparer les clés. |
GroupJoin<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>, IEqualityComparer<TKey>) |
Met en corrélation les éléments de deux séquences en fonction de l'égalité des clés et regroupe les résultats. Un IEqualityComparer<T> spécifié est utilisé pour comparer les clés. |
Index<TSource>(IEnumerable<TSource>) |
Fournit des fonctions bloquantes et englobantes pour les collections thread-safe qui implémentent IProducerConsumerCollection<T>. |
Intersect<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Produit l'intersection de deux séquences à l'aide du comparateur d'égalité par défaut pour comparer les valeurs. |
Intersect<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Produit l'intersection entre deux séquences à l'aide du IEqualityComparer<T> spécifié pour comparer les valeurs. |
IntersectBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>) |
Produit l’intersection d’ensemble de deux séquences en fonction d’une fonction de sélecteur de clé spécifiée. |
IntersectBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Produit l’intersection d’ensemble de deux séquences en fonction d’une fonction de sélecteur de clé spécifiée. |
Join<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,TInner,TResult>) |
Met en corrélation les éléments de deux séquences en fonction des clés qui correspondent. Le comparateur d'égalité par défaut est utilisé pour comparer les clés. |
Join<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,TInner,TResult>, IEqualityComparer<TKey>) |
Met en corrélation les éléments de deux séquences en fonction des clés qui correspondent. Un IEqualityComparer<T> spécifié est utilisé pour comparer les clés. |
Last<TSource>(IEnumerable<TSource>) |
Retourne le dernier élément d'une séquence. |
Last<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Retourne le dernier élément d’une séquence à satisfaire à la condition spécifiée. |
LastOrDefault<TSource>(IEnumerable<TSource>) |
Retourne le dernier élément d’une séquence ou une valeur par défaut si la séquence ne contient aucun élément. |
LastOrDefault<TSource>(IEnumerable<TSource>, TSource) |
Retourne le dernier élément d’une séquence, ou une valeur par défaut spécifiée si la séquence ne contient aucun élément. |
LastOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Retourne le dernier élément d’une séquence à satisfaire à une condition ou une valeur par défaut si aucun élément correspondant n’est trouvé. |
LastOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>, TSource) |
Retourne le dernier élément d’une séquence qui satisfait à une condition, ou une valeur par défaut spécifiée si aucun élément de ce type n’est trouvé. |
LongCount<TSource>(IEnumerable<TSource>) |
Retourne un Int64 qui représente le nombre total d'éléments dans une séquence. |
LongCount<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Retourne un Int64 qui représente le nombre total d'éléments dans une séquence à satisfaire à une condition. |
Max<TSource>(IEnumerable<TSource>) |
Retourne la valeur maximale dans une séquence générique. |
Max<TSource>(IEnumerable<TSource>, IComparer<TSource>) |
Retourne la valeur maximale dans une séquence générique. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>) |
Appelle une fonction de transformation sur chaque élément d'une séquence et retourne la valeur Decimal maximale. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Double>) |
Appelle une fonction de transformation sur chaque élément d'une séquence et retourne la valeur Double maximale. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) |
Appelle une fonction de transformation sur chaque élément d'une séquence et retourne la valeur Int32 maximale. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) |
Appelle une fonction de transformation sur chaque élément d'une séquence et retourne la valeur Int64 maximale. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>) |
Appelle une fonction de transformation sur chaque élément d'une séquence et retourne la valeur Decimal nullable maximale. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) |
Appelle une fonction de transformation sur chaque élément d'une séquence et retourne la valeur Double nullable maximale. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) |
Appelle une fonction de transformation sur chaque élément d'une séquence et retourne la valeur Int32 nullable maximale. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) |
Appelle une fonction de transformation sur chaque élément d'une séquence et retourne la valeur Int64 nullable maximale. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) |
Appelle une fonction de transformation sur chaque élément d'une séquence et retourne la valeur Single nullable maximale. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Single>) |
Appelle une fonction de transformation sur chaque élément d'une séquence et retourne la valeur Single maximale. |
Max<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>) |
Appelle une fonction de transformation sur chaque élément d'une séquence générique et retourne la valeur résultante maximale. |
MaxBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Retourne la valeur maximale dans une séquence générique en fonction d’une fonction de sélecteur de clé spécifiée. |
MaxBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>) |
Retourne la valeur maximale dans une séquence générique en fonction d’une fonction de sélecteur de clé et d’un comparateur de clés spécifiés. |
Min<TSource>(IEnumerable<TSource>) |
Retourne la valeur minimale dans une séquence générique. |
Min<TSource>(IEnumerable<TSource>, IComparer<TSource>) |
Retourne la valeur minimale dans une séquence générique. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>) |
Appelle une fonction de transformation sur chaque élément d'une séquence et retourne la valeur Decimal minimale. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Double>) |
Appelle une fonction de transformation sur chaque élément d'une séquence et retourne la valeur Double minimale. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) |
Appelle une fonction de transformation sur chaque élément d'une séquence et retourne la valeur Int32 minimale. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) |
Appelle une fonction de transformation sur chaque élément d'une séquence et retourne la valeur Int64 minimale. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>) |
Appelle une fonction de transformation sur chaque élément d'une séquence et retourne la valeur Decimal nullable minimale. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) |
Appelle une fonction de transformation sur chaque élément d'une séquence et retourne la valeur Double nullable minimale. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) |
Appelle une fonction de transformation sur chaque élément d'une séquence et retourne la valeur Int32 nullable minimale. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) |
Appelle une fonction de transformation sur chaque élément d'une séquence et retourne la valeur Int64 nullable minimale. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) |
Appelle une fonction de transformation sur chaque élément d'une séquence et retourne la valeur Single nullable minimale. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Single>) |
Appelle une fonction de transformation sur chaque élément d'une séquence et retourne la valeur Single minimale. |
Min<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>) |
Appelle une fonction de transformation sur chaque élément d'une séquence générique et retourne la valeur résultante minimale. |
MinBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Retourne la valeur minimale dans une séquence générique en fonction d’une fonction de sélecteur de clé spécifiée. |
MinBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>) |
Retourne la valeur minimale dans une séquence générique en fonction d’une fonction de sélecteur de clé et d’un comparateur de clés spécifiés. |
OfType<TResult>(IEnumerable) |
Filtre les éléments d'un IEnumerable en fonction du type spécifié. |
Order<T>(IEnumerable<T>) |
Trie les éléments d'une séquence dans l'ordre croissant. |
Order<T>(IEnumerable<T>, IComparer<T>) |
Trie les éléments d'une séquence dans l'ordre croissant. |
OrderBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Trie les éléments d'une séquence dans l'ordre croissant selon une clé. |
OrderBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>) |
Trie les éléments d'une séquence dans l'ordre croissant à l'aide d'un comparateur spécifié. |
OrderByDescending<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Trie les éléments d'une séquence dans l'ordre décroissant selon une clé. |
OrderByDescending<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>) |
Trie les éléments d'une séquence dans l'ordre décroissant à l'aide d'un comparateur spécifié. |
OrderDescending<T>(IEnumerable<T>) |
Trie les éléments d'une séquence dans l'ordre décroissant. |
OrderDescending<T>(IEnumerable<T>, IComparer<T>) |
Trie les éléments d'une séquence dans l'ordre décroissant. |
Prepend<TSource>(IEnumerable<TSource>, TSource) |
Ajoute une valeur au début de la séquence. |
Reverse<TSource>(IEnumerable<TSource>) |
Inverse l'ordre des éléments dans une séquence. |
Select<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>) |
Projette chaque élément d’une séquence dans un nouveau formulaire. |
Select<TSource,TResult>(IEnumerable<TSource>, Func<TSource,Int32,TResult>) |
Projette chaque élément d'une séquence dans un nouveau formulaire en incorporant l'index de l'élément. |
SelectMany<TSource,TResult>(IEnumerable<TSource>, Func<TSource,IEnumerable<TResult>>) |
Projette chaque élément d'une séquence sur un IEnumerable<T> et aplatit les séquences résultantes en une seule séquence. |
SelectMany<TSource,TResult>(IEnumerable<TSource>, Func<TSource,Int32,IEnumerable<TResult>>) |
Projette chaque élément d'une séquence sur un IEnumerable<T> et aplatit les séquences résultantes en une seule séquence. L'index de chaque élément source est utilisé dans le formulaire projeté de l'élément. |
SelectMany<TSource,TCollection,TResult>(IEnumerable<TSource>, Func<TSource,IEnumerable<TCollection>>, Func<TSource,TCollection,TResult>) |
Projette chaque élément d'une séquence sur un IEnumerable<T>, aplatit les séquences résultantes en une seule séquence et appelle une fonction de sélection de résultat sur chaque élément inclus. |
SelectMany<TSource,TCollection,TResult>(IEnumerable<TSource>, Func<TSource,Int32,IEnumerable<TCollection>>, Func<TSource,TCollection,TResult>) |
Projette chaque élément d'une séquence sur un IEnumerable<T>, aplatit les séquences résultantes en une seule séquence et appelle une fonction de sélection de résultat sur chaque élément inclus. L'index de chaque élément source est utilisé dans le formulaire intermédiaire projeté de l'élément. |
SequenceEqual<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Détermine si deux séquences sont égales par une comparaison des types d'élément réalisée à l'aide du comparateur d'égalité par défaut. |
SequenceEqual<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Détermine si deux séquences sont égales en comparant leurs éléments à l'aide d'un IEqualityComparer<T> spécifié. |
Single<TSource>(IEnumerable<TSource>) |
Retourne l’élément unique d’une séquence ou lève une exception si cette séquence ne contient pas un seul élément. |
Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Retourne le seul élément d’une séquence qui satisfait à une condition spécifique ou lève une exception si cette séquence contient plusieurs éléments respectant cette condition. |
SingleOrDefault<TSource>(IEnumerable<TSource>) |
Retourne l'élément unique d'une séquence ou une valeur par défaut. Cette méthode lève une exception si cette séquence contient plusieurs éléments. |
SingleOrDefault<TSource>(IEnumerable<TSource>, TSource) |
Retourne le seul élément d’une séquence, ou une valeur par défaut spécifiée si la séquence est vide ; cette méthode lève une exception s’il existe plusieurs éléments dans la séquence. |
SingleOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Retourne l’élément unique d’une séquence ou une valeur par défaut si cette séquence ne contient pas d’élément respectant cette condition. Cette méthode lève une exception si cette séquence contient plusieurs éléments satisfaisant à cette condition. |
SingleOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>, TSource) |
Retourne le seul élément d’une séquence qui satisfait à une condition spécifiée, ou une valeur par défaut spécifiée si aucun élément de ce type n’existe ; cette méthode lève une exception si plusieurs éléments satisfont à la condition. |
Skip<TSource>(IEnumerable<TSource>, Int32) |
Ignore un nombre spécifié d'éléments dans une séquence puis retourne les éléments restants. |
SkipLast<TSource>(IEnumerable<TSource>, Int32) |
Retourne une nouvelle collection énumérable qui contient les éléments de |
SkipWhile<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Ignore des éléments dans une séquence tant que la condition spécifiée a la valeur true, puis retourne les éléments restants. |
SkipWhile<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>) |
Ignore des éléments dans une séquence tant que la condition spécifiée a la valeur true, puis retourne les éléments restants. L’index de l’élément est utilisé dans la logique de la fonction de prédicat. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>) |
Calcule la somme d'une séquence de valeurs Decimal obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) |
Calcule la somme d'une séquence de valeurs Double obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) |
Calcule la somme d'une séquence de valeurs Int32 obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) |
Calcule la somme d'une séquence de valeurs Int64 obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>) |
Calcule la somme d'une séquence de valeurs Decimal nullables obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) |
Calcule la somme d'une séquence de valeurs Double nullables obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) |
Calcule la somme d'une séquence de valeurs Int32 nullables obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) |
Calcule la somme d'une séquence de valeurs Int64 nullables obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) |
Calcule la somme d'une séquence de valeurs Single nullables obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Single>) |
Calcule la somme d'une séquence de valeurs Single obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée. |
Take<TSource>(IEnumerable<TSource>, Int32) |
Retourne un nombre spécifié d'éléments contigus à partir du début d'une séquence. |
Take<TSource>(IEnumerable<TSource>, Range) |
Retourne une plage spécifiée d’éléments contigus d’une séquence. |
TakeLast<TSource>(IEnumerable<TSource>, Int32) |
Retourne une nouvelle collection énumérable qui contient les derniers éléments |
TakeWhile<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Retourne des éléments d'une séquence tant que la condition spécifiée a la valeur true. |
TakeWhile<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>) |
Retourne des éléments d'une séquence tant que la condition spécifiée a la valeur true. L’index de l’élément est utilisé dans la logique de la fonction de prédicat. |
ToArray<TSource>(IEnumerable<TSource>) |
Crée un tableau à partir de IEnumerable<T>. |
ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Crée un Dictionary<TKey,TValue> à partir d'un IEnumerable<T> selon une fonction de sélection de clé spécifiée. |
ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Crée un Dictionary<TKey,TValue> à partir de IEnumerable<T> selon une fonction de sélection de clé spécifiée et un comparateur de clé. |
ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>) |
Crée un Dictionary<TKey,TValue> à partir de IEnumerable<T> selon des fonctions de sélection de clé et de sélection d'élément spécifiées. |
ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>) |
Crée un Dictionary<TKey,TValue> à partir de IEnumerable<T> selon une fonction de sélection de clé spécifiée, un comparateur et une fonction de sélection d'élément. |
ToHashSet<TSource>(IEnumerable<TSource>) |
Crée un HashSet<T> à partir d’un IEnumerable<T>. |
ToHashSet<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>) |
Crée un HashSet<T> à partir d’un IEnumerable<T> en utilisant |
ToList<TSource>(IEnumerable<TSource>) |
Crée un List<T> à partir d’un IEnumerable<T>. |
ToLookup<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Crée un Lookup<TKey,TElement> à partir d'un IEnumerable<T> selon une fonction de sélection de clé spécifiée. |
ToLookup<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Crée un Lookup<TKey,TElement> à partir de IEnumerable<T> selon une fonction de sélection de clé spécifiée et un comparateur de clé. |
ToLookup<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>) |
Crée un Lookup<TKey,TElement> à partir de IEnumerable<T> selon des fonctions de sélection de clé et de sélection d'élément spécifiées. |
ToLookup<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>) |
Crée une Lookup<TKey,TElement> à partir de IEnumerable<T> selon une fonction de sélection de clé spécifiée, un comparateur et une fonction de sélection d'élément. |
TryGetNonEnumeratedCount<TSource>(IEnumerable<TSource>, Int32) |
Tente de déterminer le nombre d’éléments d’une séquence sans forcer une énumération. |
Union<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Produit l'union de deux séquences à l'aide du comparateur d'égalité par défaut. |
Union<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Produit l'union de deux séquences à l'aide d'un IEqualityComparer<T> spécifié. |
UnionBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TSource>, Func<TSource,TKey>) |
Produit l’union définie de deux séquences en fonction d’une fonction de sélecteur de clé spécifiée. |
UnionBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Produit l’union définie de deux séquences en fonction d’une fonction de sélecteur de clé spécifiée. |
Where<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Filtre une séquence de valeurs selon un prédicat. |
Where<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>) |
Filtre une séquence de valeurs selon un prédicat. L'index de chaque élément est utilisé dans la logique de la fonction de prédicat. |
Zip<TFirst,TSecond>(IEnumerable<TFirst>, IEnumerable<TSecond>) |
Produit une séquence de tuples avec des éléments des deux séquences spécifiées. |
Zip<TFirst,TSecond,TThird>(IEnumerable<TFirst>, IEnumerable<TSecond>, IEnumerable<TThird>) |
Produit une séquence de tuples avec des éléments des trois séquences spécifiées. |
Zip<TFirst,TSecond,TResult>(IEnumerable<TFirst>, IEnumerable<TSecond>, Func<TFirst,TSecond,TResult>) |
Applique une fonction spécifiée aux éléments correspondants de deux séquences pour produire une séquence des résultats. |
AsParallel(IEnumerable) |
Active la parallélisation d'une requête. |
AsParallel<TSource>(IEnumerable<TSource>) |
Active la parallélisation d'une requête. |
AsQueryable(IEnumerable) |
Convertit un IEnumerable en IQueryable. |
AsQueryable<TElement>(IEnumerable<TElement>) |
Convertit un IEnumerable<T> générique en IQueryable<T> générique. |
Ancestors<T>(IEnumerable<T>) |
Retourne une collection d'éléments qui contient les ancêtres de chaque nœud de la collection source. |
Ancestors<T>(IEnumerable<T>, XName) |
Retourne une collection d'éléments filtrée qui contient les ancêtres de chaque nœud de la collection source. Seuls les éléments avec un XName correspondant sont inclus dans la collection. |
DescendantNodes<T>(IEnumerable<T>) |
Retourne une collection des nœuds descendants de chaque document et élément de la collection source. |
Descendants<T>(IEnumerable<T>) |
Retourne une collection d'éléments qui contient les éléments descendants de tous les éléments et tous les documents de la collection source. |
Descendants<T>(IEnumerable<T>, XName) |
Retourne une collection d'éléments filtrée qui contient les éléments descendants de tous les éléments et tous les documents de la collection source. Seuls les éléments avec un XName correspondant sont inclus dans la collection. |
Elements<T>(IEnumerable<T>) |
Retourne une collection des éléments enfants de chaque élément et document de la collection source. |
Elements<T>(IEnumerable<T>, XName) |
Retourne une collection filtrée des éléments enfants de chaque élément et document de la collection source. Seuls les éléments avec un XName correspondant sont inclus dans la collection. |
InDocumentOrder<T>(IEnumerable<T>) |
Retourne une collection de nœuds qui contient tous les nœuds de la collection source, triés selon l'ordre des documents. |
Nodes<T>(IEnumerable<T>) |
Retourne une collection des nœuds enfants de chaque document et élément de la collection source. |
Remove<T>(IEnumerable<T>) |
Supprime chaque nœud de la collection source de son nœud parent. |
S’applique à
Cohérence de thread
La méthode Dispose n’est pas thread-safe. Tous les autres membres publics et protégés de BlockingCollection<T> sont thread-safe et peuvent être utilisés simultanément à partir de plusieurs threads.
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour