ActionBlock<TInput>.ITargetBlock<TInput>.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 Nachricht an den Datenflussblock und gibt ihnen die Möglichkeit, die Nachricht zu nutzen oder zu verschieben.
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
Parameter
- messageHeader
- DataflowMessageHeader
Die Kopfzeile der nachricht, die angeboten wird.
- messageValue
- TInput
Der Wert der angebotenen Nachricht.
- source
- ISourceBlock<TInput>
Der Datenflussblock, der die Nachricht anbietet. Dies kann sein null.
- consumeToAccept
- Boolean
truedas Ziel während des Aufrufs ConsumeMessage(DataflowMessageHeader, ITargetBlock<TOutput>, Boolean)synchron anweisen, OfferMessage(DataflowMessageHeader, TInput, ISourceBlock<TInput>, Boolean) vor der Rückgabe Acceptedan , um die Nachricht zu nutzen; andernfalls false.
Gibt zurück
Der Status der angebotenen Nachricht. Wenn die Nachricht vom Ziel akzeptiert wurde, Accepted wird sie zurückgegeben, und die Quelle sollte die angebotene Nachricht nicht mehr verwenden, da sie sich jetzt im Besitz des Ziels befindet. Wenn die Nachricht vom Ziel verschoben wurde, wird sie als Benachrichtigung zurückgegeben, Postponed dass das Ziel später versuchen kann, die Nachricht zu nutzen oder zu reservieren. In der Zwischenzeit besitzt die Quelle weiterhin die Nachricht und kann sie anderen Blöcken anbieten.
Wenn das Ziel andernfalls eine Nachricht verschoben hätte, aber die Quelle war null, Declined wird zurückgegeben.
Wenn das Ziel versucht hat, die Nachricht zu akzeptieren, sie aber aufgrund der Quelle, die die Nachricht an ein anderes Ziel weitergibt, verpasst oder einfach verworfen wurde, NotAvailable wird zurückgegeben.
Wenn das Ziel ausgewählt hat, die Nachricht nicht zu akzeptieren, Declined wird diese zurückgegeben. Wenn das Ziel die Nachricht nicht akzeptiert und nie eine andere Nachricht von dieser Quelle akzeptiert, DecliningPermanently wird diese zurückgegeben.
Implementiert
Ausnahmen
messageHeader ist ungültig.
-oder- consumeToAccept kann nur sein, wenn eine Nicht-NULL-Angabe truevorhanden istsource.