BufferBlock<T>.ITargetBlock<T>.OfferMessage Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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<T>.OfferMessage(System::Threading::Tasks::Dataflow::DataflowMessageHeader messageHeader, T messageValue, System::Threading::Tasks::Dataflow::ISourceBlock<T> ^ source, bool consumeToAccept) = System::Threading::Tasks::Dataflow::ITargetBlock<T>::OfferMessage;
System.Threading.Tasks.Dataflow.DataflowMessageStatus ITargetBlock<T>.OfferMessage (System.Threading.Tasks.Dataflow.DataflowMessageHeader messageHeader, T messageValue, System.Threading.Tasks.Dataflow.ISourceBlock<T> source, bool consumeToAccept);
abstract member System.Threading.Tasks.Dataflow.ITargetBlock<T>.OfferMessage : System.Threading.Tasks.Dataflow.DataflowMessageHeader * 'T * System.Threading.Tasks.Dataflow.ISourceBlock<'T> * bool -> System.Threading.Tasks.Dataflow.DataflowMessageStatus
override this.System.Threading.Tasks.Dataflow.ITargetBlock<T>.OfferMessage : System.Threading.Tasks.Dataflow.DataflowMessageHeader * 'T * System.Threading.Tasks.Dataflow.ISourceBlock<'T> * bool -> System.Threading.Tasks.Dataflow.DataflowMessageStatus
Function OfferMessage (messageHeader As DataflowMessageHeader, messageValue As T, source As ISourceBlock(Of T), consumeToAccept As Boolean) As DataflowMessageStatus Implements ITargetBlock(Of T).OfferMessage
Paramètres
- messageHeader
- DataflowMessageHeader
Instance DataflowMessageHeader qui représente l'en-tête du message qui est proposé.
- messageValue
- T
Valeur du message proposé.
- source
- ISourceBlock<T>
ISourceBlock<TOutput> qui transmet le message. Celui-ci peut être null
.
- consumeToAccept
- Boolean
Définit sur 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.
Retours
É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 un message différé mais que la source
avait la valeur null
, Declined serait 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
non Null.