TransformBlock<TInput,TOutput> Klasse

Definition

Stellt einen Datenflussblock bereit, der einen bereitgestellten Func<T,TResult> Delegaten für jedes empfangene Datenelement aufruft.

generic <typename TInput, typename TOutput>
public ref class TransformBlock sealed : System::Threading::Tasks::Dataflow::IPropagatorBlock<TInput, TOutput>, System::Threading::Tasks::Dataflow::IReceivableSourceBlock<TOutput>, System::Threading::Tasks::Dataflow::ISourceBlock<TOutput>, System::Threading::Tasks::Dataflow::ITargetBlock<TInput>
public sealed class TransformBlock<TInput,TOutput> : System.Threading.Tasks.Dataflow.IPropagatorBlock<TInput,TOutput>, System.Threading.Tasks.Dataflow.IReceivableSourceBlock<TOutput>, System.Threading.Tasks.Dataflow.ISourceBlock<TOutput>, System.Threading.Tasks.Dataflow.ITargetBlock<TInput>
type TransformBlock<'Input, 'Output> = class
    interface IPropagatorBlock<'Input, 'Output>
    interface ITargetBlock<'Input>
    interface IDataflowBlock
    interface ISourceBlock<'Output>
    interface IReceivableSourceBlock<'Output>
type TransformBlock<'Input, 'Output> = class
    interface IDataflowBlock
    interface IPropagatorBlock<'Input, 'Output>
    interface ISourceBlock<'Output>
    interface ITargetBlock<'Input>
    interface IReceivableSourceBlock<'Output>
Public NotInheritable Class TransformBlock(Of TInput, TOutput)
Implements IPropagatorBlock(Of TInput, TOutput), IReceivableSourceBlock(Of TOutput), ISourceBlock(Of TOutput), ITargetBlock(Of TInput)

Typparameter

TInput

Gibt den Typ der empfangenen und von diesem TransformBlock<TInput,TOutput>betriebenen Daten an.

TOutput

Gibt den Typ der Datenausgabe an.TransformBlock<TInput,TOutput>

Vererbung
TransformBlock<TInput,TOutput>
Implementiert

Hinweise

Note

Die TPL Dataflow Library (der System.Threading.Tasks.Dataflow Namespace) wird nicht mit .NET verteilt. Um den System.Threading.Tasks.Dataflow Namespace in Visual Studio zu installieren, öffnen Sie Ihr Projekt, wählen Sie "NuGet-Pakete verwalten " im Menü "Projekt " aus, und suchen Sie online nach dem System.Threading.Tasks.Dataflow Paket. Führen Sie alternativ das .NET Core CLI aus, um es zu installieren, indem Sie dotnet add package System.Threading.Tasks.Dataflow ausführen.

Konstruktoren

Name Beschreibung
TransformBlock<TInput,TOutput>(Func<TInput,Task<TOutput>>, ExecutionDataflowBlockOptions)

Initialisiert ein neues TransformBlock<TInput,TOutput> mit dem angegebenen Func<T,TResult> und ExecutionDataflowBlockOptions.

TransformBlock<TInput,TOutput>(Func<TInput,Task<TOutput>>)

Initialisiert ein neues TransformBlock<TInput,TOutput> mit dem angegebenen Func<T,TResult>.

TransformBlock<TInput,TOutput>(Func<TInput,TOutput>, ExecutionDataflowBlockOptions)

Initialisiert ein neues TransformBlock<TInput,TOutput> mit dem angegebenen Func<T,TResult> und ExecutionDataflowBlockOptions.

TransformBlock<TInput,TOutput>(Func<TInput,TOutput>)

Initialisiert ein neues TransformBlock<TInput,TOutput> mit dem angegebenen Func<T,TResult>.

Eigenschaften

Name Beschreibung
Completion

Ruft einen Task , der den asynchronen Vorgang und den Abschluss des Datenflussblocks darstellt.

InputCount

Ruft die Anzahl der Eingabeelemente ab, die auf die Verarbeitung durch diesen Block warten.

OutputCount

Ruft die Anzahl der Ausgabeelemente ab, die von diesem Block empfangen werden können.

Methoden

Name Beschreibung
Complete()

Signalisiert, IDataflowBlock dass sie weder mehr Nachrichten akzeptieren noch mehr nachrichten produzieren sollte, noch mehr verschobene Nachrichten verbrauchen.

Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht.

(Geerbt von Object)
GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
LinkTo(ITargetBlock<TOutput>, DataflowLinkOptions)

Verknüpft den ISourceBlock<TOutput> angegebenen ITargetBlock<TInput> Wert.

MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die den formatierten Namen dieser IDataflowBlock Instanz darstellt.

TryReceive(Predicate<TOutput>, TOutput)

Versucht, synchron ein verfügbares Ausgabeelement von der IReceivableSourceBlock<TOutput>.

TryReceiveAll(IList<TOutput>)

Versucht, alle verfügbaren Elemente synchron von der IReceivableSourceBlock<TOutput>.

Explizite Schnittstellenimplementierungen

Name Beschreibung
IDataflowBlock.Fault(Exception)

Bewirkt, dass der IDataflowBlock Vorgang in einem Faulted Zustand abgeschlossen ist.

ISourceBlock<TOutput>.ConsumeMessage(DataflowMessageHeader, ITargetBlock<TOutput>, Boolean)

Wird von einer verknüpften aufgerufen ITargetBlock<TInput> , um eine DataflowMessageHeader zuvor angebotene ISourceBlock<TOutput>Nutzung zu akzeptieren und zu nutzen.

ISourceBlock<TOutput>.ReleaseReservation(DataflowMessageHeader, ITargetBlock<TOutput>)

Wird von einem Verknüpften ITargetBlock<TInput> aufgerufen, um eine zuvor reservierte DataflowMessageHeader Version dieses ISourceBlock<TOutput>Vorgangs freizugeben.

ISourceBlock<TOutput>.ReserveMessage(DataflowMessageHeader, ITargetBlock<TOutput>)

Aufgerufen von einem verknüpften ITargetBlock<TInput> , um ein zuvor angebotenes DataflowMessageHeader Angebot zu ISourceBlock<TOutput>reservieren.

ITargetBlock<TInput>.OfferMessage(DataflowMessageHeader, TInput, ISourceBlock<TInput>, Boolean)

Bietet dem Ziel die ITargetBlock<TInput>Möglichkeit, die Nachricht zu nutzen oder zu verschieben.

Erweiterungsmethoden

Name Beschreibung
AsObservable<TOutput>(ISourceBlock<TOutput>)

Erstellt eine neue IObservable<T> Abstraktion über dem ISourceBlock<TOutput>.

AsObserver<TInput>(ITargetBlock<TInput>)

Erstellt eine neue IObserver<T> Abstraktion über dem ITargetBlock<TInput>.

LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>, DataflowLinkOptions, Predicate<TOutput>)

Verknüpft den ISourceBlock<TOutput> angegebenen Filter mit dem angegebenen ITargetBlock<TInput> Filter.

LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>, Predicate<TOutput>)

Verknüpft den ISourceBlock<TOutput> angegebenen Filter mit dem angegebenen ITargetBlock<TInput> Filter.

LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>)

Verknüpft den ISourceBlock<TOutput> angegebenen ITargetBlock<TInput>Wert.

OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>, CancellationToken)

Stellt eine Bereit Task<TResult> , die die Quelle asynchron auf die verfügbare Ausgabe überwacht.

OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>)

Stellt eine Bereit Task<TResult> , die die Quelle asynchron auf die verfügbare Ausgabe überwacht.

Post<TInput>(ITargetBlock<TInput>, TInput)

Stellt ein Element in das ITargetBlock<TInput>.

Receive<TOutput>(ISourceBlock<TOutput>, CancellationToken)

Empfängt synchron einen Wert aus einer angegebenen Quelle und stellt ein Token zum Abbrechen des Vorgangs bereit.

Receive<TOutput>(ISourceBlock<TOutput>, TimeSpan, CancellationToken)

Empfängt synchron einen Wert aus einer angegebenen Quelle und stellt ein Token bereit, um den Vorgang abzubrechen und ein optionales Timeoutintervall zu beobachten.

Receive<TOutput>(ISourceBlock<TOutput>, TimeSpan)

Empfängt synchron einen Wert aus einer angegebenen Quelle, wobei ein optionaler Timeoutzeitraum beobachtet wird.

Receive<TOutput>(ISourceBlock<TOutput>)

Empfängt synchron einen Wert aus einer angegebenen Quelle.

ReceiveAllAsync<TOutput>(IReceivableSourceBlock<TOutput>, CancellationToken)

Erstellt eine IAsyncEnumerable<T> , die das Empfangen aller Daten aus der Quelle ermöglicht.

ReceiveAsync<TOutput>(ISourceBlock<TOutput>, CancellationToken)

Empfängt asynchron einen Wert aus einer angegebenen Quelle und stellt ein Token zum Abbrechen des Vorgangs bereit.

ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan, CancellationToken)

Empfängt asynchron einen Wert aus einer angegebenen Quelle und stellt ein Token bereit, um den Vorgang abzubrechen und ein optionales Timeoutintervall zu beobachten.

ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan)

Empfängt asynchron einen Wert aus einer angegebenen Quelle, wobei ein optionaler Timeoutzeitraum beobachtet wird.

ReceiveAsync<TOutput>(ISourceBlock<TOutput>)

Empfängt asynchron einen Wert aus einer angegebenen Quelle.

SendAsync<TInput>(ITargetBlock<TInput>, TInput, CancellationToken)

Bietet asynchron eine Nachricht an den Zielnachrichtenblock, sodass eine Verschiebung möglich ist.

SendAsync<TInput>(ITargetBlock<TInput>, TInput)

Bietet asynchron eine Nachricht an den Zielnachrichtenblock, sodass eine Verschiebung möglich ist.

TryReceive<TOutput>(IReceivableSourceBlock<TOutput>, TOutput)

Versucht, ein Element synchron von der ISourceBlock<TOutput>.

Gilt für: