Windows apps
Collapse the table of content
Expand the table of content
Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

BlockingCollection<T>::TryTake Method (T%, Int32)

.NET Framework (current version)
 

Tries to remove an item from the BlockingCollection<T> in the specified time period.

Namespace:   System.Collections.Concurrent
Assembly:  System (in System.dll)

public:
bool TryTake(
	[OutAttribute] T% item,
	int millisecondsTimeout
)

Parameters

item
Type: T%

The item to be removed from the collection.

millisecondsTimeout
Type: System::Int32

The number of milliseconds to wait, or Infinite (-1) to wait indefinitely.

Return Value

Type: System::Boolean

true if an item could be removed from the collection within the specified time; otherwise, false.

Exception Condition
ObjectDisposedException

The BlockingCollection<T> has been disposed.

ArgumentOutOfRangeException

millisecondsTimeout is a negative number other than -1, which represents an infinite time-out.

InvalidOperationException

The underlying collection was modified outside of this BlockingCollection<T> instance.

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>, you can specify the type of collection to use. For example, you could specify a ConcurrentQueue<T> 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>.

Universal Windows Platform
Available since 8
.NET Framework
Available since 4.0
Portable Class Library
Supported in: portable .NET platforms
Windows Phone
Available since 8.1
Return to top
Show:
© 2017 Microsoft