BufferBlock<T>.ITargetBlock<T>.OfferMessage Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Bietet eine Meldung für ITargetBlock<TInput> an und gibt dem Ziel die Möglichkeit, die Nachricht zu verarbeiten oder zurückzustellen.
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
Parameter
- messageHeader
- DataflowMessageHeader
Eine DataflowMessageHeader-Instanz, die die Header der Nachricht darstellt, die bereitgestellt wird.
- messageValue
- T
Der Wert der Nachricht, die bereitgestellt wird.
- source
- ISourceBlock<T>
Die ISourceBlock<TOutput>, die die Nachricht anbietet. Dieser Wert kann null
sein.
- consumeToAccept
- Boolean
Legen Sie dies auf TRUE fest, um das Ziel anzuweisen, ConsumeMessage(DataflowMessageHeader, ITargetBlock<TOutput>, Boolean) während des Aufrufs von OfferMessage(DataflowMessageHeader, TInput, ISourceBlock<TInput>, Boolean) vor der Rückgabe von Accepted synchron aufzurufen, um die Meldung zu verarbeiten.
Gibt zurück
Der Status der angebotenen Meldung. Wenn die Meldung vom Ziel akzeptiert wurde, wird Accepted zurückgegeben, und die Quelle sollte die angebotene Meldung nicht mehr verwenden, da sie jetzt dem Ziel gehört. Wenn die Nachricht vom Ziel zurückgestellt wurde, wird Postponed als Benachrichtigung zurückgegeben, dass das Ziel später möglicherweise versucht, die Nachricht zu verarbeiten oder zu reservieren. Zwischenzeitlich besitzt die Quelle die Nachricht weiterhin und bietet sie möglicherweise anderen Blöcke an.
Wenn das Ziel andernfalls die Meldung zurückgestellt hätte, aber source
gleich null
war, wird stattdessen Declined zurückgegeben.
Wenn das Ziel versucht hat, die Nachricht zu akzeptieren, diese aber verpasst hat, weil die Quelle die die Meldung an ein anderes Ziel übermittelt oder einfach verworfen hat, wird NotAvailable zurückgegeben.
Wenn das Ziel beschlossen hat, die Nachricht nicht zu akzeptieren, wird Declined zurückgegeben. Wenn das Ziel beschlossen hat, die Meldung nicht zu akzeptieren und niemals eine weitere Meldung von dieser Quelle akzeptieren wird, wird DecliningPermanently zurückgegeben.
Implementiert
Ausnahmen
Der messageHeader
ist ungültig.
oder consumeToAccept
kann nur TRUE sein, wenn eine source
bereitgestellt wird, die nicht NULL ist.