Freigeben über


BatchBlock<T>.ISourceBlock<T[]>.ConsumeMessage Methode

Definition

Wird von einem verknüpften ITargetBlock<TInput>-Objekt aufgerufen, um ein DataflowMessageHeader-Objekt zu akzeptieren und zu verarbeiten, das zuvor durch dieses ISourceBlock<TOutput> angeboten wurde.

 virtual cli::array <T> ^ System.Threading.Tasks.Dataflow.ISourceBlock<T[]>.ConsumeMessage(System::Threading::Tasks::Dataflow::DataflowMessageHeader messageHeader, System::Threading::Tasks::Dataflow::ITargetBlock<cli::array <T> ^> ^ target, [Runtime::InteropServices::Out] bool % messageConsumed) = System::Threading::Tasks::Dataflow::ISourceBlock<cli::array <T> ^>::ConsumeMessage;
T[] ISourceBlock<T[]>.ConsumeMessage (System.Threading.Tasks.Dataflow.DataflowMessageHeader messageHeader, System.Threading.Tasks.Dataflow.ITargetBlock<T[]> target, out bool messageConsumed);
abstract member System.Threading.Tasks.Dataflow.ISourceBlock<T[]>.ConsumeMessage : System.Threading.Tasks.Dataflow.DataflowMessageHeader * System.Threading.Tasks.Dataflow.ITargetBlock<'T[]> * bool -> 'T[]
override this.System.Threading.Tasks.Dataflow.ISourceBlock<T[]>.ConsumeMessage : System.Threading.Tasks.Dataflow.DataflowMessageHeader * System.Threading.Tasks.Dataflow.ITargetBlock<'T[]> * bool -> 'T[]
Function ConsumeMessage (messageHeader As DataflowMessageHeader, target As ITargetBlock(Of T()), ByRef messageConsumed As Boolean) As T() Implements ISourceBlock(Of T()).ConsumeMessage

Parameter

messageHeader
DataflowMessageHeader

DataflowMessageHeader der Meldung, die verarbeitet wird.

target
ITargetBlock<T[]>

Die ITargetBlock<TInput>, die die Nachricht verwendet.

messageConsumed
Boolean

true, wenn die Nachricht erfolgreich verarbeitet wurde, andernfalls false.

Gibt zurück

T[]

Der Wert der verarbeiteten Meldung. Dies entspricht möglicherweise einer anderen DataflowMessageHeader-Instanz als die zuvor reservierte und die als messageHeader an ConsumeMessage(DataflowMessageHeader, ITargetBlock<TOutput>, Boolean) übergebene. Der ITargetBlock<TInput> muss den zurückgegebenen Wert benutzen und nicht den Wert, der als messageValue von OfferMessage(DataflowMessageHeader, TInput, ISourceBlock<TInput>, Boolean) übergeben wird.

Wenn die Meldung, die angefordert wird, nicht verfügbar ist, ist der Rückgabewert null.

Implementiert

Ausnahmen

Der messageHeader ist ungültig.

target ist null.

Hinweise

Nur ITargetBlock<TInput> Instanzen, die mit dieser ISourceBlock<TOutput> Instanz verknüpft sind, können verwenden ConsumeMessage, und sie darf nur verwendet werden, um Instanzen zu nutzen DataflowMessageHeader , die zuvor von dieser Quelle für das Ziel angeboten wurden.

Gilt für: