BlockingCollection<T>.Take Methode

Definition

Entfernt ein Element aus BlockingCollection<T>.

Überlädt

Take()

Entfernt ein Element aus BlockingCollection<T>.

Take(CancellationToken)

Entfernt ein Element aus BlockingCollection<T>.

Take()

Entfernt ein Element aus BlockingCollection<T>.

public:
 T Take();
public T Take ();
member this.Take : unit -> 'T
Public Function Take () As T

Gibt zurück

T

Das Element, das aus der Auflistung entfernt wurde.

Ausnahmen

Die zugrunde liegende Auflistung wurde außerhalb dieser BlockingCollection<T>-Instanz geändert, oder die BlockingCollection<T> ist leer, und die Auflistung wurde zum Hinzufügen als vollständig markiert.

Die BlockingCollection<T> ist leer und wurde hinsichtlich Hinzufügungen als vollständig markiert.

Hinweise

Ein Aufruf, Take der blockiert werden kann, bis ein Element entfernt werden kann.

Die Reihenfolge, in der ein Element entfernt wird, hängt vom Typ der Auflistung ab, die zum Erstellen der BlockingCollection<T> Instanz verwendet wird. Wenn Sie ein BlockingCollection<T> Objekt erstellen, können Sie den zu verwendenden Auflistungstyp angeben. Sie können beispielsweise ein Objekt für das erste In-, First Out-Verhalten (FIFO) oder ein ConcurrentQueue<T> ConcurrentStack<T> Objekt für das letzte In(LIFO)-Verhalten angeben. Sie können jede Sammlungsklasse verwenden, die die IProducerConsumerCollection<T>-Schnittstelle implementiert. Der standardmäßige Sammlungstyp für BlockingCollection<T> ist ConcurrentQueue<T>.

Siehe auch

Gilt für:

Take(CancellationToken)

Entfernt ein Element aus BlockingCollection<T>.

public:
 T Take(System::Threading::CancellationToken cancellationToken);
public T Take (System.Threading.CancellationToken cancellationToken);
member this.Take : System.Threading.CancellationToken -> 'T
Public Function Take (cancellationToken As CancellationToken) As T

Parameter

cancellationToken
CancellationToken

Ein Token, das zum Abbrechen des Vorgangs "take" verwendet werden kann.

Gibt zurück

T

Das Element, das aus der Auflistung entfernt wurde.

Ausnahmen

Die BlockingCollection<T> wurde freigegeben, oder die CancellationTokenSource, die das Token erstellt hat, wurde abgebrochen.

Die zugrunde liegende Auflistung wurde außerhalb dieser BlockingCollection<T>-Instanz geändert, die BlockingCollection ist zum Hinzufügen als vollständig markiert, oder die BlockingCollection<T> ist leer.

Hinweise

Ein Aufruf kann Take blockieren, bis ein Element entfernt werden kann, oder das Token abgebrochen wird.

Die Reihenfolge, in der ein Element entfernt wird, hängt vom Typ der Auflistung ab, die zum Erstellen der BlockingCollection<T> Instanz verwendet wird. Wenn Sie ein BlockingCollection<T> Objekt erstellen, können Sie den zu verwendenden Auflistungstyp angeben. Sie können beispielsweise ein Objekt für das erste In-, First Out-Verhalten (FIFO) oder ein ConcurrentQueue<T> ConcurrentStack<T> Objekt für das letzte In(LIFO)-Verhalten angeben. Sie können jede Sammlungsklasse verwenden, die die IProducerConsumerCollection<T>-Schnittstelle implementiert. Der standardmäßige Sammlungstyp für BlockingCollection<T> ist ConcurrentQueue<T>.

Siehe auch

Gilt für: