BlockingCollection<T>.TryTake Method (T)
Tries to remove an item from the BlockingCollection<T>.
Namespace: System.Collections.Concurrent
Assembly: System (in System.dll)
| Exception | Condition |
|---|---|
| ObjectDisposedException | The BlockingCollection<T> has been disposed. |
| InvalidOperationException | The underlying collection was modified outside of this BlockingCollection<T> instance. |
If the collection is empty, this method immediately returns false.
The order in which an item is removed depends on the type of collection used to create the BlockingCollection<T> instance. When you create a BlockingCollection<T> object, you can specify the type of collection to use. For example, you could specify a ConcurrentConcurrentQueue object for first in, first out (FIFO) behavior, or a ConcurrentStack<T> object for last in, first out (LIFO) behavior. You can use any collection class that implements the IProducerConsumerCollection<T> interface. The default collection type for BlockingCollection<T> is ConcurrentQueue<T>.
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.