JoinBlock<T1,T2>.ISourceBlock<Tuple<T1,T2>>.ReserveMessage Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Réserve le droit de passer la propriété du message identifié par le DataflowMessageHeader de ce ISourceBlock<TOutput> au 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
Paramètres
- messageHeader
- DataflowMessageHeader
DataflowMessageHeader du message qui doit être réservé.
- target
- ITargetBlock<Tuple<T1,T2>>
ITargetBlock<TInput> pour lequel le message doit être réservé.
Retours
true
si le message a été réservé avec succès ; sinon false
.
Implémente
Exceptions
messageHeader
n'est pas valide.
target
est null
(Nothing en Visual Basic).
Remarques
Le ITargetBlock<TInput> pour lequel le message doit être réservé n’a pas besoin d’être lié à partir de cette ISourceBlock<TOutput> instance. En outre, cette ISourceBlock<TOutput> instance n’a peut-être jamais offert le message directement au ITargetBlock<TInput>.
Si true
est retourné, vous devez appeler ConsumeMessageReleaseReservation ou pour ce message avec les mêmes DataflowMessageHeader et ITargetBlock<TInput>. Si ce n’est pas le cas, la source risque de ne pas pouvoir propager d’autres messages vers une cible.
N’appelez ReserveMessage pas pendant que la cible contient des verrous internes. Cela violera la hiérarchie de verrous nécessaire pour éviter les interblocages dans un réseau de flux de données.