ActionBlock<TInput>.ITargetBlock<TInput>.OfferMessage Метод

Определение

Предлагает сообщение блоку потока данных и дает ему возможность использовать или отложить сообщение.

 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

Параметры

messageHeader
DataflowMessageHeader

Заголовок предлагаемого сообщения.

messageValue
TInput

Значение предлагаемого сообщения.

source
ISourceBlock<TInput>

Блок потока данных, предлагающий сообщение. Это может быть null.

consumeToAccept
Boolean

true , чтобы указать целевому объекту ConsumeMessage(DataflowMessageHeader, ITargetBlock<TOutput>, Boolean) синхронно во время вызова OfferMessage(DataflowMessageHeader, TInput, ISourceBlock<TInput>, Boolean)перед возвратом Accepted, чтобы использовать сообщение; в противном случае false.

Возвращаемое значение

Состояние предлагаемого сообщения. Если сообщение было принято целевым объектом, возвращается и Accepted источник больше не должен использовать предлагаемое сообщение, так как он теперь принадлежит целевому объекту. Если сообщение было отложено целевым объектом, возвращается в виде уведомления о Postponed том, что целевой объект может позже попытаться использовать или зарезервировать сообщение; в то же время источник по-прежнему владеет сообщением и может предложить его другим блокам.

Если целевой объект в противном случае отложил сообщение, но источник был nullвозвращен Declined .

Если целевой объект пытался принять сообщение, но пропустил его из-за источника доставки сообщения другому целевому объекту или просто отменив его, NotAvailable возвращается.

Если целевой объект не принял сообщение, Declined возвращается. Если целевой объект не принимает сообщение и никогда не принимает другое сообщение из этого источника, DecliningPermanently возвращается.

Реализации

Исключения

messageHeader недопустимо.

-или- consumeToAccept может быть true только в том случае, если предоставлено ненулевое sourceзначение.

Применяется к