Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All

DataflowBlock::Receive<TOutput> Method (ISourceBlock<TOutput>, TimeSpan)

.NET Framework 4.6 and 4.5

Synchronously receives a value from a specified source, observing an optional time-out period.

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

generic<typename TOutput>
static TOutput Receive(
	ISourceBlock<TOutput>^ source, 
	TimeSpan timeout

Type Parameters


The type of data contained in the source.


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

The source from which to receive the value.

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.

Return Value

Type: TOutput
The received value.

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).


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


timeout is greater than MaxValue.


source is nullptr.


No item could be received from the source.


The specified time-out expired before an item was received from the source.

If the source successfully offered an item that was received by this operation, that item is returned even if a concurrent time-out occurs.

.NET Framework

Supported in: 4.5

Portable Class Library

Supported in: Portable Class Library
© 2015 Microsoft