다음을 통해 공유


JoinBlock<T1,T2>.ISourceBlock<Tuple<T1,T2>>.ReserveMessage 메서드

정의

ISourceBlock<TOutput>DataflowMessageHeader로 식별된 메시지의 소유권을 ITargetBlock<TInput>으로 전달할 권한을 보유합니다.

 virtual bool System.Threading.Tasks.Dataflow.ISourceBlock<System.Tuple<T1,T2>>.ReserveMessage(System::Threading::Tasks::Dataflow::DataflowMessageHeader messageHeader, System::Threading::Tasks::Dataflow::ITargetBlock<Tuple<T1, T2> ^> ^ target) = System::Threading::Tasks::Dataflow::ISourceBlock<Tuple<T1, T2> ^>::ReserveMessage;
bool ISourceBlock<Tuple<T1,T2>>.ReserveMessage (System.Threading.Tasks.Dataflow.DataflowMessageHeader messageHeader, System.Threading.Tasks.Dataflow.ITargetBlock<Tuple<T1,T2>> target);
abstract member System.Threading.Tasks.Dataflow.ISourceBlock<System.Tuple<T1,T2>>.ReserveMessage : System.Threading.Tasks.Dataflow.DataflowMessageHeader * System.Threading.Tasks.Dataflow.ITargetBlock<'T1 * 'T2> -> bool
override this.System.Threading.Tasks.Dataflow.ISourceBlock<System.Tuple<T1,T2>>.ReserveMessage : System.Threading.Tasks.Dataflow.DataflowMessageHeader * System.Threading.Tasks.Dataflow.ITargetBlock<'T1 * 'T2> -> bool
Function ReserveMessage (messageHeader As DataflowMessageHeader, target As ITargetBlock(Of Tuple(Of T1, T2))) As Boolean Implements ISourceBlock(Of Tuple(Of T1, T2)).ReserveMessage

매개 변수

messageHeader
DataflowMessageHeader

예약할 메시지의 DataflowMessageHeader입니다.

target
ITargetBlock<Tuple<T1,T2>>

메시지가 예약될 ITargetBlock<TInput>입니다.

반환

Boolean

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

구현

예외

messageHeader이 올바르지 않은 경우

targetnull(Visual Basic에서는 없음)입니다.

설명

메시지를 예약할 대상은 ITargetBlock<TInput>ISourceBlock<TOutput> 인스턴스에서 연결할 필요가 없습니다. 또한 이 ISourceBlock<TOutput> 인스턴스는 메시지를 직접 ITargetBlock<TInput>제공하지 않았을 수 있습니다.

반환되는 경우 true 이후에 동일한 DataflowMessageHeader ITargetBlock<TInput>메시지를 사용하여 또는 이 메시지에 대해 호출 ConsumeMessage ReleaseReservation 해야 합니다. 그렇지 않으면 원본이 더 이상 메시지를 대상에 전파하지 못할 수 있습니다.

대상이 내부 잠금을 유지하는 동안에는 호출 ReserveMessage 하지 마세요. 이렇게 위반 잠금 계층 구조의 데이터 흐름 네트워크에서 교착 상태를 방지 하기 위해 필요 합니다.

적용 대상