Bearbeiten

Freigeben über


BatchedJoinBlock<T1,T2,T3>.ISourceBlock<Tuple<IList<T1>,IList<T2>,IList<T3>>>.ConsumeMessage Method

Definition

Passes the ownership of the message identified by the DataflowMessageHeader from this ISourceBlock<TOutput> instance to the ITargetBlock<TInput>.

 virtual Tuple<System::Collections::Generic::IList<T1> ^, System::Collections::Generic::IList<T2> ^, System::Collections::Generic::IList<T3> ^> ^ System.Threading.Tasks.Dataflow.ISourceBlock<System.Tuple<System.Collections.Generic.IList<T1>,System.Collections.Generic.IList<T2>,System.Collections.Generic.IList<T3>>>.ConsumeMessage(System::Threading::Tasks::Dataflow::DataflowMessageHeader messageHeader, System::Threading::Tasks::Dataflow::ITargetBlock<Tuple<System::Collections::Generic::IList<T1> ^, System::Collections::Generic::IList<T2> ^, System::Collections::Generic::IList<T3> ^> ^> ^ target, [Runtime::InteropServices::Out] bool % messageConsumed) = System::Threading::Tasks::Dataflow::ISourceBlock<Tuple<System::Collections::Generic::IList<T1> ^, System::Collections::Generic::IList<T2> ^, System::Collections::Generic::IList<T3> ^> ^>::ConsumeMessage;
Tuple<System.Collections.Generic.IList<T1>,System.Collections.Generic.IList<T2>,System.Collections.Generic.IList<T3>> ISourceBlock<Tuple<IList<T1>,IList<T2>,IList<T3>>>.ConsumeMessage (System.Threading.Tasks.Dataflow.DataflowMessageHeader messageHeader, System.Threading.Tasks.Dataflow.ITargetBlock<Tuple<System.Collections.Generic.IList<T1>,System.Collections.Generic.IList<T2>,System.Collections.Generic.IList<T3>>> target, out bool messageConsumed);
abstract member System.Threading.Tasks.Dataflow.ISourceBlock<System.Tuple<System.Collections.Generic.IList<T1>,System.Collections.Generic.IList<T2>,System.Collections.Generic.IList<T3>>>.ConsumeMessage : System.Threading.Tasks.Dataflow.DataflowMessageHeader * System.Threading.Tasks.Dataflow.ITargetBlock<System.Collections.Generic.IList<'T1> * System.Collections.Generic.IList<'T2> * System.Collections.Generic.IList<'T3>> * bool -> System.Collections.Generic.IList<'T1> * System.Collections.Generic.IList<'T2> * System.Collections.Generic.IList<'T3>
override this.System.Threading.Tasks.Dataflow.ISourceBlock<System.Tuple<System.Collections.Generic.IList<T1>,System.Collections.Generic.IList<T2>,System.Collections.Generic.IList<T3>>>.ConsumeMessage : System.Threading.Tasks.Dataflow.DataflowMessageHeader * System.Threading.Tasks.Dataflow.ITargetBlock<System.Collections.Generic.IList<'T1> * System.Collections.Generic.IList<'T2> * System.Collections.Generic.IList<'T3>> * bool -> System.Collections.Generic.IList<'T1> * System.Collections.Generic.IList<'T2> * System.Collections.Generic.IList<'T3>
Function ConsumeMessage (messageHeader As DataflowMessageHeader, target As ITargetBlock(Of Tuple(Of IList(Of T1), IList(Of T2), IList(Of T3))), ByRef messageConsumed As Boolean) As Tuple(Of IList(Of T1), IList(Of T2), IList(Of T3)) Implements ISourceBlock(Of Tuple(Of IList(Of T1), IList(Of T2), IList(Of T3))).ConsumeMessage

Parameters

messageHeader
DataflowMessageHeader

The DataflowMessageHeader of the message that is to be consumed.

target
ITargetBlock<Tuple<IList<T1>,IList<T2>,IList<T3>>>

The ITargetBlock<TInput> for which the message is to be consumed.

messageConsumed
Boolean

true if the message was successfully consumed. false otherwise.

Returns

Tuple<IList<T1>,IList<T2>,IList<T3>>

The value of the consumed message. This may correspond to a different DataflowMessageHeader instance than was previously reserved and passed as the messageHeader to this method. The consuming ITargetBlock<TInput> must use the returned value instead of the value passed as messageValue to OfferMessage(DataflowMessageHeader, TInput, ISourceBlock<TInput>, Boolean). If the message requested is not available, the return value is null (Nothing in Visual Basic).

Implements

Exceptions

The messageHeader is not valid.

The target is null (Nothing in Visual Basic).

Remarks

The ITargetBlock<TInput> for which the message is to be consumed need not be linked from this ISourceBlock<TOutput> instance. Moreover, this ISourceBlock<TOutput> instance may have never offered the message directly to the ITargetBlock<TInput>.

Applies to