다음을 통해 공유


BufferBlock<T>.ISourceBlock<T>.ConsumeMessage 메서드

정의

ITargetBlock<TInput>에서 이전에 제공한 DataflowMessageHeader를 받아 사용하기 위해 연결된 ISourceBlock<TOutput>에 의해 호출됩니다.

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

매개 변수

messageHeader
DataflowMessageHeader

사용 중인 메시지의 DataflowMessageHeader입니다.

target
ITargetBlock<T>

메시지를 사용하는 ITargetBlock<TInput>입니다.

messageConsumed
Boolean

메시지를 성공적으로 사용했으면 true이고, 그렇지 않으면 false입니다.

반환

T

사용한 메시지의 값입니다. 이전에 예약되어 ConsumeMessage(DataflowMessageHeader, ITargetBlock<TOutput>, Boolean)messageHeader로 전달된 다른 DataflowMessageHeader 인스턴스에 해당할 수 있습니다. 사용 중인 ITargetBlock<TInput>OfferMessage(DataflowMessageHeader, TInput, ISourceBlock<TInput>, Boolean)를 통해 messageValue로 전달되는 값 대신 반환되는 값을 사용해야 합니다.

요청한 메시지를 사용할 수 없으면 반환 값은 null이 됩니다.

구현

예외

messageHeader이 올바르지 않은 경우

targetnull인 경우

설명

ITargetBlock<TInput> 이 연결 된 인스턴스 ISourceBlock<TOutput> 인스턴스를 사용할 수 있습니다 ConsumeMessage를 사용에 사용 해야 합니다 DataflowMessageHeader 인스턴스가이 원본을 대상으로 이전에 제공 합니다.

적용 대상