JoinBlock<T1,T2,T3>.ISourceBlock<Tuple<T1,T2,T3>>.ReserveMessage Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Se reserva el derecho de pasar la propiedad del mensaje identificado por de DataflowMessageHeader este ISourceBlock<TOutput> a .ITargetBlock<TInput>
virtual bool System.Threading.Tasks.Dataflow.ISourceBlock<System.Tuple<T1,T2,T3>>.ReserveMessage(System::Threading::Tasks::Dataflow::DataflowMessageHeader messageHeader, System::Threading::Tasks::Dataflow::ITargetBlock<Tuple<T1, T2, T3> ^> ^ target) = System::Threading::Tasks::Dataflow::ISourceBlock<Tuple<T1, T2, T3> ^>::ReserveMessage;
bool ISourceBlock<Tuple<T1,T2,T3>>.ReserveMessage(System.Threading.Tasks.Dataflow.DataflowMessageHeader messageHeader, System.Threading.Tasks.Dataflow.ITargetBlock<Tuple<T1,T2,T3>> target);
abstract member System.Threading.Tasks.Dataflow.ISourceBlock<System.Tuple<T1,T2,T3>>.ReserveMessage : System.Threading.Tasks.Dataflow.DataflowMessageHeader * System.Threading.Tasks.Dataflow.ITargetBlock<'T1 * 'T2 * 'T3> -> bool
override this.System.Threading.Tasks.Dataflow.ISourceBlock<System.Tuple<T1,T2,T3>>.ReserveMessage : System.Threading.Tasks.Dataflow.DataflowMessageHeader * System.Threading.Tasks.Dataflow.ITargetBlock<'T1 * 'T2 * 'T3> -> bool
Function ReserveMessage (messageHeader As DataflowMessageHeader, target As ITargetBlock(Of Tuple(Of T1, T2, T3))) As Boolean Implements ISourceBlock(Of Tuple(Of T1, T2, T3)).ReserveMessage
Parámetros
- messageHeader
- DataflowMessageHeader
DataflowMessageHeader del mensaje que se va a reservar.
- target
- ITargetBlock<Tuple<T1,T2,T3>>
para ITargetBlock<TInput> el que se va a reservar el mensaje.
Devoluciones
true si el mensaje se reservó correctamente; de lo contrario, false.
Implementaciones
Excepciones
no messageHeader es válido.
El target es null (Nothing en Visual Basic).
Comentarios
El ITargetBlock<TInput> para el que se va a reservar el mensaje no debe estar vinculado desde esta ISourceBlock<TOutput> instancia. Además, es posible que esta ISourceBlock<TOutput> instancia nunca haya ofrecido el mensaje directamente a .ITargetBlock<TInput>
Si true se devuelve , debe llamar posteriormente a ConsumeMessage o ReleaseReservation para este mensaje con los mismos DataflowMessageHeader y ITargetBlock<TInput>. Si no lo hace, es posible que el origen no pueda propagar ningún mensaje adicional a ningún destino.
No llames ReserveMessage mientras el destino contiene ningún bloqueo interno. Si lo hace, se infringirá la jerarquía de bloqueo necesaria para evitar interbloqueos en una red de flujo de datos.