ISourceBlock<TOutput>.ConsumeMessage 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.
Appelé par un ITargetBlock<TInput> lié pour recevoir et utiliser un DataflowMessageHeader précédemment proposé par ce ISourceBlock<TOutput>.
public TOutput ConsumeMessage (System.Threading.Tasks.Dataflow.DataflowMessageHeader messageHeader, System.Threading.Tasks.Dataflow.ITargetBlock<out TOutput> target, out bool messageConsumed);
public TOutput? ConsumeMessage (System.Threading.Tasks.Dataflow.DataflowMessageHeader messageHeader, System.Threading.Tasks.Dataflow.ITargetBlock<out TOutput> target, out bool messageConsumed);
abstract member ConsumeMessage : System.Threading.Tasks.Dataflow.DataflowMessageHeader * System.Threading.Tasks.Dataflow.ITargetBlock<'Output> * bool -> 'Output
Public Function ConsumeMessage (messageHeader As DataflowMessageHeader, target As ITargetBlock(Of Out TOutput), ByRef messageConsumed As Boolean) As TOutput
Paramètres
- messageHeader
- DataflowMessageHeader
DataflowMessageHeader du message en cours d'utilisation.
- target
- ITargetBlock<TOutput>
ITargetBlock<TInput> absorbant le message.
- messageConsumed
- Boolean
true
si le message a été consommé avec succès ; sinon false
.
Retours
- TOutput
Valeur du message consommé. Cela peut correspondre à une instance de DataflowMessageHeader différente de celle qui a été précédemment réservée et transmise comme messageHeader
à ConsumeMessage(DataflowMessageHeader, ITargetBlock<TOutput>, Boolean). Le ITargetBlock<TInput> consommateur doit utiliser la valeur retournée au lieu de la valeur passée comme messageValue
via OfferMessage(DataflowMessageHeader, TInput, ISourceBlock<TInput>, Boolean).
Si le message demandé n’est pas disponible, la valeur de retour est Null.
Exceptions
Le messageHeader n’est pas valide.
La cible est null
.
Remarques
Seules ITargetBlock<TInput> les instances liées à cette ISourceBlock<TOutput> instance peuvent utiliser ConsumeMessageet doivent uniquement être utilisées pour consommer DataflowMessageHeader des instances précédemment proposées par cette source à la cible.