Partager via


TransformManyBlock<TInput,TOutput>.ITargetBlock<TInput>.OfferMessage Méthode

Définition

Offre un message au ITargetBlock<TInput>, donnant à la cible la possibilité d'utiliser ou de différer le message.

 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

Paramètres

messageHeader
DataflowMessageHeader

Instance DataflowMessageHeader qui représente l'en-tête du message qui est proposé.

messageValue
TInput

Valeur du message proposé.

source
ISourceBlock<TInput>

ISourceBlock<TOutput> qui transmet le message. Celui-ci peut être null.

consumeToAccept
Boolean

true si la cible doit appeler ConsumeMessage(DataflowMessageHeader, ITargetBlock<TOutput>, Boolean) de façon synchrone pendant l'appel à ITargetBlock<TInput>, avant de renvoyer Accepted pour utiliser le message.

Retours

DataflowMessageStatus

État du message proposé. Si le message a été accepté par la cible, Accepted est retourné, et la source ne doit plus utiliser le message envoyé, car elle est désormais la propriété de la cible. Si le message a été différé par la cible, Postponed est retournée comme notification que la cible peut ensuite essayer d'utiliser ou de réserver un message ; parallèlement, la source possède le message et peut toujours le proposer à d'autres blocs.

Si la cible avait par contre différé mais que la source avait la valeur null, Declined est retourné à la place.

Si la cible a tenté de recevoir le message mais a échoué en raison de la source fournissant un message à une autre cible ou en l'ignorant simplement, NotAvailable est retourné.

Si la cible a choisi de ne pas recevoir le message, Declined est retourné. Si la cible a choisi de ne pas recevoir le message et ne recevra jamais un autre message de cette source, DecliningPermanently est retourné.

Implémente

Exceptions

messageHeader n'est pas valide.

  • ou - consumeToAccept peut avoir la valeur true uniquement s'il est fourni avec une source différente de null.

S’applique à