BlockingCollection<T>.TryAdd Method (T, Int32, CancellationToken)

.NET Framework (current version)

Tries to add the specified item to the BlockingCollection<T> within the specified time period, while observing a cancellation token.

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

public bool TryAdd(
	T item,
	int millisecondsTimeout,
	CancellationToken cancellationToken


Type: T

The item to be added to the collection.

Type: System.Int32

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

Type: System.Threading.CancellationToken

A cancellation token to observe.

Return Value

Type: System.Boolean

true if the item could be added to the collection within the specified time; otherwise, false. If the item is a duplicate, and the underlying collection does not accept duplicate items, then an InvalidOperationException is thrown.

Exception Condition

If the CancellationToken is canceled.


The BlockingCollection<T> has been disposed or the underlying CancellationTokenSource has been disposed.


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


The BlockingCollection<T> has been marked as complete with regards to additions.


The underlying collection didn't accept the item.

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