Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
ReceiveAsync(TOutput) Method (ISourceBlock(TOutput), TimeSpan, CancellationToken)

DataflowBlock.ReceiveAsync<TOutput> Method (ISourceBlock<TOutput>, TimeSpan, CancellationToken)

.NET Framework 4.6 and 4.5

Asynchronously receives a value from a specified source, providing a token to cancel the operation and observing an optional time-out interval.

Namespace:  System.Threading.Tasks.Dataflow
Assembly:  System.Threading.Tasks.Dataflow (in System.Threading.Tasks.Dataflow.dll)

public static Task<TOutput> ReceiveAsync<TOutput>(
	this ISourceBlock<TOutput> source,
	TimeSpan timeout,
	CancellationToken cancellationToken
)

Type Parameters

TOutput

The type of data contained in the source.

Parameters

source
Type: System.Threading.Tasks.Dataflow.ISourceBlock<TOutput>

The source from which to receive the value.

timeout
Type: System.TimeSpan

The maximum time interval, in milliseconds, to wait for the synchronous operation to complete, or an interval that represents -1 milliseconds to wait indefinitely.

cancellationToken
Type: System.Threading.CancellationToken

The token which may be used to cancel the receive operation.

Return Value

Type: System.Threading.Tasks.Task<TOutput>
A task that represents the asynchronous receive operation. When a value is successfully received from the source, the returned task is completed and its Result returns the value. If a value cannot be retrieved because the time-out expired or cancellation was requested, the returned task is canceled. If the value cannot be retrieved because the source is empty and completed, an InvalidOperationException exception is thrown in the returned task.

Usage Note

In Visual Basic and C#, you can call this method as an instance method on any object of type ISourceBlock<TOutput>. When you use instance method syntax to call this method, omit the first parameter. For more information, see Extension Methods (Visual Basic) or Extension Methods (C# Programming Guide).

ExceptionCondition
ArgumentNullException

source is null.

ArgumentOutOfRangeException

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

-or-

timeout is greater than MaxValue.

.NET Framework

Supported in: 4.5

Portable Class Library

Supported in: Portable Class Library
Show:
© 2015 Microsoft