ActionBlock<TInput>.ITargetBlock<TInput>.OfferMessage Metodo

Definizione

Offre un messaggio al blocco del flusso di dati e offre la possibilità di utilizzare o posticipare il messaggio.

 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

Parametri

messageHeader
DataflowMessageHeader

Intestazione del messaggio offerto.

messageValue
TInput

Valore del messaggio offerto.

source
ISourceBlock<TInput>

Blocco del flusso di dati che offre il messaggio. Può trattarsi di null.

consumeToAccept
Boolean

true per indicare alla destinazione di chiamare ConsumeMessage(DataflowMessageHeader, ITargetBlock<TOutput>, Boolean) in modo sincrono durante la chiamata a OfferMessage(DataflowMessageHeader, TInput, ISourceBlock<TInput>, Boolean), prima di restituire Accepted, per utilizzare il messaggio; in caso contrario, false.

Valori restituiti

Stato del messaggio offerto. Se il messaggio è stato accettato dalla destinazione, Accepted viene restituito e l'origine non deve più usare il messaggio offerto, perché è ora di proprietà della destinazione. Se il messaggio è stato posticipato dalla destinazione, Postponed viene restituito come notifica che la destinazione potrebbe tentare successivamente di utilizzare o riservare il messaggio. Nel frattempo, l'origine è ancora proprietaria del messaggio e potrebbe offrirla ad altri blocchi.

Se la destinazione avrebbe altrimenti posticipato il messaggio, ma l'origine era null, Declined viene restituito .

Se la destinazione ha tentato di accettare il messaggio ma non è riuscita a causa dell'origine che recapita il messaggio a un'altra destinazione o semplicemente lo rimuove, NotAvailable viene restituito.

Se la destinazione ha scelto di non accettare il messaggio, Declined viene restituito . Se la destinazione ha scelto di non accettare il messaggio e non accetterà mai un altro messaggio da questa origine, DecliningPermanently viene restituito.

Implementazioni

Eccezioni

messageHeader non è valido.

-oppure- consumeToAccept può essere true solo se fornito con un oggetto non Null source.

Si applica a