BlockingCollection<T>.Take Metod

Definition

Tar bort ett objekt från BlockingCollection<T>.

Överlagringar

Name Description
Take()

Tar bort ett objekt från BlockingCollection<T>.

Take(CancellationToken)

Tar bort ett objekt från BlockingCollection<T>.

Take()

Tar bort ett objekt från BlockingCollection<T>.

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

Returer

T

Objektet som togs bort från samlingen.

Undantag

Den underliggande samlingen ändrades utanför den här BlockingCollection<T> instansen, eller så är den BlockingCollection<T> tom och har markerats som komplett när det gäller tillägg.

Kommentarer

Ett anrop till Take kan blockeras tills ett objekt är tillgängligt för att tas bort.

I vilken ordning ett objekt tas bort beror på vilken typ av samling som används för att skapa instansen BlockingCollection<T> . När du skapar ett BlockingCollection<T> objekt kan du ange vilken typ av samling som ska användas. Du kan till exempel ange ett ConcurrentQueue<T> objekt för fifo-beteende (first in, first out) eller ett ConcurrentStack<T> objekt för lifo-beteende (last in, first out). Du kan använda valfri samlingsklass som implementerar IProducerConsumerCollection<T> gränssnittet. Standardsamlingstypen för BlockingCollection<T> är ConcurrentQueue<T>.

Se även

Gäller för

Take(CancellationToken)

Tar bort ett objekt från 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

Parametrar

cancellationToken
CancellationToken

En token som kan användas för att avbryta åtgärden "take".

Returer

T

Objektet som togs bort från samlingen.

Undantag

Den underliggande samlingen ändrades utanför den här BlockingCollection<T> instansen, eller så är den BlockingCollection<T> tom och har markerats som komplett när det gäller tillägg.

Kommentarer

Ett anrop till Take kan blockeras tills ett objekt är tillgängligt för att tas bort eller token avbryts.

I vilken ordning ett objekt tas bort beror på vilken typ av samling som används för att skapa instansen BlockingCollection<T> . När du skapar ett BlockingCollection<T> objekt kan du ange vilken typ av samling som ska användas. Du kan till exempel ange ett ConcurrentQueue<T> objekt för fifo-beteende (first in, first out) eller ett ConcurrentStack<T> objekt för lifo-beteende (last in, first out). Du kan använda valfri samlingsklass som implementerar IProducerConsumerCollection<T> gränssnittet. Standardsamlingstypen för BlockingCollection<T> är ConcurrentQueue<T>.

Se även

Gäller för