Sdílet prostřednictvím


ISourceBlock<TOutput>.ConsumeMessage Metoda

Definice

Volá se propojeným ITargetBlock<TInput> uživatelem, který přijímá a využívá dříve nabízenou DataflowMessageHeader službu 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

Parametry

messageHeader
DataflowMessageHeader

The DataflowMessageHeader of the message being to the consumed.

target
ITargetBlock<TOutput>

Spotřeba ITargetBlock<TInput> zprávy.

messageConsumed
Boolean

truepokud byla zpráva úspěšně spotřebována; v opačném případě . false

Návraty

TOutput

Hodnota spotřebované zprávy. To může odpovídat jiné DataflowMessageHeader instanci, než byla dříve rezervována a předána jako instance messageHeader do ConsumeMessage(DataflowMessageHeader, ITargetBlock<TOutput>, Boolean). Uživatel ITargetBlock<TInput> musí místo hodnoty předávané jako messageValueOfferMessage(DataflowMessageHeader, TInput, ISourceBlock<TInput>, Boolean)použít vrácenou hodnotu .

Pokud požadovaná zpráva není k dispozici, bude vrácená hodnota null.

Výjimky

MessageHeader není platný.

Cíl je null.

Poznámky

Používat mohou pouze ITargetBlock<TInput> instance propojené s touto ISourceBlock<TOutput> instancí a musí být použity pouze ke využívání DataflowMessageHeader instancí dříve nabízených tímto zdrojem pro ConsumeMessagecíl.

Platí pro