Partager via


ActionBlock<TInput>.ITargetBlock<TInput>.OfferMessage Méthode

Définition

Offre un message au bloc de flux de données et lui donne la possibilité de le consommer ou le différer.

 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

En-tête du message proposé.

messageValue
TInput

Valeur du message proposé.

source
ISourceBlock<TInput>

Bloc de flux de données qui offre le message. Celui-ci peut être null.

consumeToAccept
Boolean

true pour indiquer à la cible d’appeler ConsumeMessage(DataflowMessageHeader, ITargetBlock<TOutput>, Boolean) de façon synchrone pendant l’appel à OfferMessage(DataflowMessageHeader, TInput, ISourceBlock<TInput>, Boolean), avant de retourner Accepted, pour consommer le message ; sinon, false.

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 autrement différé le message alors que la source avait la valeur null, Declined aurait été retourné.

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 un source différent de Null.

S’applique à