Udostępnij za pośrednictwem


TransformBlock<TInput,TOutput>.ITargetBlock<TInput>.OfferMessage Metoda

Definicja

Oferuje komunikat do ITargetBlock<TInput>elementu , dając docelową możliwość korzystania lub odroczenia komunikatu.

 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

DataflowMessageHeader Wystąpienie reprezentujące nagłówek oferowanego komunikatu.

messageValue
TInput

Wartość oferowanego komunikatu.

source
ISourceBlock<TInput>

Oferta ISourceBlock<TOutput> wiadomości. Może to być null.

consumeToAccept
Boolean

true jeśli element docelowy musi wywołać ConsumeMessage(DataflowMessageHeader, ITargetBlock<TOutput>, Boolean) synchronicznie podczas wywołania ITargetBlock<TInput>.OfferMessage(DataflowMessageHeader, TInput, ISourceBlock<TInput>, Boolean)metody , przed zwróceniem Acceptedelementu w celu korzystania z komunikatu.

Zwraca

DataflowMessageStatus

Stan oferowanej wiadomości. Jeśli komunikat został zaakceptowany przez element docelowy, Accepted jest zwracany, a źródło nie powinno już używać oferowanego komunikatu, ponieważ jest teraz własnością obiektu docelowego. Jeśli komunikat został odroczony przez element docelowy, Postponed jest zwracany jako powiadomienie, że element docelowy może później podjąć próbę użycia lub zarezerwować komunikat; w międzyczasie źródło nadal jest właścicielem wiadomości i może zaoferować ją innym blokom.

Jeśli obiekt docelowy miałby inaczej odroczone, ale źródło było null, Declined jest zwracane.

Jeśli element docelowy próbował zaakceptować komunikat, ale go nieodebrał z powodu źródła dostarczającego komunikat do innego miejsca docelowego lub po prostu go odrzucić, NotAvailable jest zwracany.

Jeśli element docelowy nie zaakceptował komunikatu, Declined zostanie zwrócony. Jeśli element docelowy nie zaakceptował wiadomości i nigdy nie zaakceptuje innego komunikatu z tego źródła, DecliningPermanently zostanie zwrócony.

Implementuje

Wyjątki

Wartość jest nieprawidłowa messageHeader .

-or- consumeToAccept może mieć wartość true tylko w przypadku podania wartości innej niż null source.

Dotyczy