Sdílet prostřednictvím


ActionBlock<TInput>.ITargetBlock<TInput>.OfferMessage Metoda

Definice

Nabídne zprávu bloku toku dat a dá mu možnost zprávu využít nebo odložit.

 virtual System::Threading::Tasks::Dataflow::DataflowMessageStatus System.Threading.Tasks.Dataflow.ITargetBlock<TInput>.OfferMessage(System::Threading::Tasks::Dataflow::DataflowMessageHeader messageHeader, TInput messageValue, System::Threading::Tasks::Dataflow::ISourceBlock<TInput> ^ source, bool consumeToAccept) = System::Threading::Tasks::Dataflow::ITargetBlock<TInput>::OfferMessage;
System.Threading.Tasks.Dataflow.DataflowMessageStatus ITargetBlock<TInput>.OfferMessage (System.Threading.Tasks.Dataflow.DataflowMessageHeader messageHeader, TInput messageValue, System.Threading.Tasks.Dataflow.ISourceBlock<TInput> source, bool consumeToAccept);
abstract member System.Threading.Tasks.Dataflow.ITargetBlock<TInput>.OfferMessage : System.Threading.Tasks.Dataflow.DataflowMessageHeader * 'Input * System.Threading.Tasks.Dataflow.ISourceBlock<'Input> * bool -> System.Threading.Tasks.Dataflow.DataflowMessageStatus
override this.System.Threading.Tasks.Dataflow.ITargetBlock<TInput>.OfferMessage : System.Threading.Tasks.Dataflow.DataflowMessageHeader * 'Input * System.Threading.Tasks.Dataflow.ISourceBlock<'Input> * bool -> System.Threading.Tasks.Dataflow.DataflowMessageStatus
Function OfferMessage (messageHeader As DataflowMessageHeader, messageValue As TInput, source As ISourceBlock(Of TInput), consumeToAccept As Boolean) As DataflowMessageStatus Implements ITargetBlock(Of TInput).OfferMessage

Parametry

messageHeader
DataflowMessageHeader

Záhlaví nabízené zprávy.

messageValue
TInput

Hodnota nabízené zprávy.

source
ISourceBlock<TInput>

Blok toku dat, který zprávu nabízí. Může to být null.

consumeToAccept
Boolean

truepokyn cíli, aby během volání OfferMessage(DataflowMessageHeader, TInput, ISourceBlock<TInput>, Boolean)metody před vrácením Acceptedvolal ConsumeMessage(DataflowMessageHeader, ITargetBlock<TOutput>, Boolean) synchronně, aby zprávu spotřeboval, jinak false.

Návraty

Stav nabízené zprávy Pokud byla zpráva přijata cílem, Accepted vrátí se a zdroj by již neměl nabízenou zprávu používat, protože je nyní vlastníkem cíle. Pokud cíl zprávu odložil, vrátí se jako oznámení, Postponed že se cíl může později pokusit zprávu využít nebo rezervovat. Mezitím zdroj zprávu stále vlastní a může ji nabídnout jiným blokům.

Pokud by cíl jinak odložil zprávu, ale zdroj byl null, Declined vrátí se.

Pokud se cíl pokusil zprávu přijmout, ale zmeškal ji kvůli tomu, že zdroj zprávu doručil do jiného cíle nebo ji jednoduše zahodil, NotAvailable vrátí se.

Pokud se cíl rozhodl zprávu nepřijmout, Declined vrátí se. Pokud se cíl rozhodl zprávu nepřijmout a nikdy nepřijme jinou zprávu z tohoto zdroje, DecliningPermanently vrátí se.

Implementuje

Výjimky

messageHeader není platný.

-or- consumeToAccept může být true pouze v případě, že je k dispozici hodnota , která není null source.

Platí pro