JoinBlock<T1,T2,T3> Klasse
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.
Stellt einen Datenflussblock bereit, der sich über mehrere Datenflussquellen erstreckt, die nicht unbedingt desselben Typs sind. Der Datenflussblock wartet auf ein ankommendes Element für jeden Typ, bevor sie alle zusammen als Tupel freigegeben werden, das ein Element pro Typ enthält.
generic <typename T1, typename T2, typename T3>
public ref class JoinBlock sealed : System::Threading::Tasks::Dataflow::IReceivableSourceBlock<Tuple<T1, T2, T3> ^>, System::Threading::Tasks::Dataflow::ISourceBlock<Tuple<T1, T2, T3> ^>
public sealed class JoinBlock<T1,T2,T3> : System.Threading.Tasks.Dataflow.IReceivableSourceBlock<Tuple<T1,T2,T3>>, System.Threading.Tasks.Dataflow.ISourceBlock<Tuple<T1,T2,T3>>
type JoinBlock<'T1, 'T2, 'T3> = class
interface IReceivableSourceBlock<'T1 * 'T2 * 'T3>
interface ISourceBlock<'T1 * 'T2 * 'T3>
interface IDataflowBlock
type JoinBlock<'T1, 'T2, 'T3> = class
interface IDataflowBlock
interface IReceivableSourceBlock<'T1 * 'T2 * 'T3>
interface ISourceBlock<'T1 * 'T2 * 'T3>
Public NotInheritable Class JoinBlock(Of T1, T2, T3)
Implements IReceivableSourceBlock(Of Tuple(Of T1, T2, T3)), ISourceBlock(Of Tuple(Of T1, T2, T3))
Typparameter
- T1
Gibt den Typ der Daten an, die vom ersten Ziel des Blocks akzeptiert werden.
- T2
Gibt den Typ der Daten an, die vom zweiten Ziel des Blocks akzeptiert werden.
- T3
Gibt den Typ der Daten an, die vom dritten Ziel des Blocks akzeptiert werden.
- Vererbung
-
JoinBlock<T1,T2,T3>
- Implementiert
-
IDataflowBlock IReceivableSourceBlock<Tuple<T1,T2,T3>> ISourceBlock<Tuple<T1,T2,T3>> ISourceBlock<TOutput>
Hinweise
Hinweis
Die TPL-Datenflussbibliothek (System.Threading.Tasks.Dataflow-Namespace) wird nicht mit .NET ausgeliefert. Öffnen Sie zum Installieren des System.Threading.Tasks.Dataflow-Namespace in Visual Studio Ihr Projekt, wählen Sie im Menü Projekt die Option NuGet-Pakete verwalten aus, und suchen Sie online nach dem System.Threading.Tasks.Dataflow
-Paket. Alternativ können Sie es mithilfe der .NET Core-CLI installieren und dazu dotnet add package System.Threading.Tasks.Dataflow
ausführen.
Konstruktoren
JoinBlock<T1,T2,T3>() |
Initialisiert eine neue JoinBlock<T1,T2,T3>. |
JoinBlock<T1,T2,T3>(GroupingDataflowBlockOptions) |
Initialisiert eine neue JoinBlock<T1,T2,T3>. |
Eigenschaften
Completion |
Ruft ein Task ab, das den asynchronen Vorgang und die Beendigung des Datenflussblocks darstellt. |
OutputCount |
Ruft die Anzahl der Ausgabe-Elementen ab, die von diesem Block empfangen werden können. |
Target1 |
Ruft ein Ziel ab, das verwendet werden kann, um Meldungen des ersten Typs anzubieten. |
Target2 |
Ruft ein Ziel ab, das verwendet werden kann, um Meldungen des zweiten Typs anzubieten. |
Target3 |
Ruft ein Ziel ab, das verwendet werden kann, um Meldungen des dritten Typs anzubieten. |
Methoden
Complete() |
Signalisiert IDataflowBlock, dass es keine Nachrichten mehr akzeptieren und keine produzieren und keine weiteren zurückgestellten Nachrichten verarbeiten soll. |
Equals(Object) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object) |
GetHashCode() |
Fungiert als Standardhashfunktion. (Geerbt von Object) |
GetType() |
Ruft den Type der aktuellen Instanz ab. (Geerbt von Object) |
LinkTo(ITargetBlock<Tuple<T1,T2,T3>>, DataflowLinkOptions) |
Verknüpft den Quellblock mit dem angegebenen Zielblock. |
MemberwiseClone() |
Erstellt eine flache Kopie des aktuellen Object. (Geerbt von Object) |
ToString() |
Gibt eine Zeichenfolge zurück, die den formatierten Namen dieser IDataflowBlock-Instanz darstellt. |
TryReceive(Predicate<Tuple<T1,T2,T3>>, Tuple<T1,T2,T3>) |
Versucht, ein verfügbares Output-Element vonIReceivableSourceBlock<TOutput> synchron zu empfangen. |
TryReceiveAll(IList<Tuple<T1,T2,T3>>) |
Versucht, alle verfügbaren Elemente aus IReceivableSourceBlock<TOutput> synchron zu empfangen. |
Explizite Schnittstellenimplementierungen
IDataflowBlock.Fault(Exception) |
Bewirkt, IDataflowBlock in einem Faulted Zustand auszuführen. |
ISourceBlock<Tuple<T1,T2,T3>>.ConsumeMessage(DataflowMessageHeader, ITargetBlock<Tuple<T1,T2,T3>>, Boolean) |
Übergibt den Besitz der von dieser Instanz identifizierten DataflowMessageHeader Nachricht an die ITargetBlock<TInput>.ISourceBlock<TOutput> |
ISourceBlock<Tuple<T1,T2,T3>>.ReleaseReservation(DataflowMessageHeader, ITargetBlock<Tuple<T1,T2,T3>>) |
Übergibt das Recht, den Besitz der durch die DataflowMessageHeader-Struktur identifizierten Nachricht von dieser ISourceBlock<TOutput> an die ITargetBlock<TInput>-Schnittstelle zu übergeben |
ISourceBlock<Tuple<T1,T2,T3>>.ReserveMessage(DataflowMessageHeader, ITargetBlock<Tuple<T1,T2,T3>>) |
Behält sich das Recht vor, den Besitz der durch die DataflowMessageHeader-Struktur identifizierten Nachricht von dieser ISourceBlock<TOutput> an die ITargetBlock<TInput>-Schnittstelle zu übergeben |
Erweiterungsmethoden
AsObservable<TOutput>(ISourceBlock<TOutput>) |
Erstellt eine neue IObservable<T> Abstraktion über ISourceBlock<TOutput>. |
LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>) |
Verknüpft das ISourceBlock<TOutput> mit dem angegebenen ITargetBlock<TInput>. |
LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>, Predicate<TOutput>) |
Verknüpft das ISourceBlock<TOutput> mit dem angegebenen ITargetBlock<TInput> Filter. |
LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>, DataflowLinkOptions, Predicate<TOutput>) |
Verknüpft das ISourceBlock<TOutput> mit dem angegebenen ITargetBlock<TInput> Filter. |
OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>) |
Stellt eine Task<TResult> bereit, die asynchron die Quelle für verfügbare Ausgabe überwacht. |
OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>, CancellationToken) |
Stellt eine Task<TResult> bereit, die asynchron die Quelle für verfügbare Ausgabe überwacht. |
Receive<TOutput>(ISourceBlock<TOutput>) |
Empfängt synchron einen Wert aus der angegebenen Quelle. |
Receive<TOutput>(ISourceBlock<TOutput>, CancellationToken) |
Erhält synchron einen Wert aus einer angegebenen Quelle und stellt ein Token bereit, um die Operation abzubrechen. |
Receive<TOutput>(ISourceBlock<TOutput>, TimeSpan) |
Empfängt synchron einen Wert aus einer angegebenen Quelle und beachtet ein optionales Timeout. |
Receive<TOutput>(ISourceBlock<TOutput>, TimeSpan, CancellationToken) |
Empfängt synchron einen Wert aus einer angegebenen Quelle, stellt ein Token bereit, um den Vorgang abzubrechen und beachtet ein optionales Timeoutintervall. |
ReceiveAllAsync<TOutput>(IReceivableSourceBlock<TOutput>, CancellationToken) |
Erstellt eine IAsyncEnumerable<T> , die den Empfang aller Daten aus der Quelle ermöglicht. |
ReceiveAsync<TOutput>(ISourceBlock<TOutput>) |
Empfängt asynchron einen Wert aus der angegebenen Quelle. |
ReceiveAsync<TOutput>(ISourceBlock<TOutput>, CancellationToken) |
Erhält asynchron einen Wert aus einer angegebenen Quelle und stellt ein Token bereit, um die Operation abzubrechen. |
ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan) |
Empfängt asynchron einen Wert aus einer angegebenen Quelle und beachtet ein optionales Timeout. |
ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan, CancellationToken) |
Empfängt asynchron einen Wert aus einer angegebenen Quelle, stellt ein Token bereit, um den Vorgang abzubrechen und beachtet ein optionales Timeoutintervall. |
TryReceive<TOutput>(IReceivableSourceBlock<TOutput>, TOutput) |
Versucht, ein Element von ISourceBlock<TOutput> synchron zu empfangen. |