JoinBlock<T1,T2> Osztály

Definíció

Olyan adatfolyamblokkot biztosít, amely több adatfolyamforráshoz csatlakozik, nem feltétlenül azonos típusúak, és arra vár, hogy minden típushoz egy elem érkezzen, mielőtt az összes elem egyszerre jelenik meg, típusonként egy elemből álló rekordként.

generic <typename T1, typename T2>
public ref class JoinBlock sealed : System::Threading::Tasks::Dataflow::IReceivableSourceBlock<Tuple<T1, T2> ^>, System::Threading::Tasks::Dataflow::ISourceBlock<Tuple<T1, T2> ^>
public sealed class JoinBlock<T1,T2> : System.Threading.Tasks.Dataflow.IReceivableSourceBlock<Tuple<T1,T2>>, System.Threading.Tasks.Dataflow.ISourceBlock<Tuple<T1,T2>>
type JoinBlock<'T1, 'T2> = class
    interface IReceivableSourceBlock<'T1 * 'T2>
    interface ISourceBlock<'T1 * 'T2>
    interface IDataflowBlock
type JoinBlock<'T1, 'T2> = class
    interface IDataflowBlock
    interface IReceivableSourceBlock<'T1 * 'T2>
    interface ISourceBlock<'T1 * 'T2>
Public NotInheritable Class JoinBlock(Of T1, T2)
Implements IReceivableSourceBlock(Of Tuple(Of T1, T2)), ISourceBlock(Of Tuple(Of T1, T2))

Típusparaméterek

T1

A blokk első célja által elfogadott adattípust adja meg.

T2

A blokk második célja által elfogadott adattípust adja meg.

Öröklődés
JoinBlock<T1,T2>
Megvalósítás

Megjegyzések

Note

A TPL-adatfolyamtár (a System.Threading.Tasks.Dataflow névtér) nincs elosztva a .NET-tel. Ha telepíteni szeretné a System.Threading.Tasks.Dataflow névteret a Visual Studióban, nyissa meg a projektet, válassza NuGet-csomagok kezelése a Project menüjében, és keressen online a System.Threading.Tasks.Dataflow csomagra. Másik lehetőségként a .NET Core CLI használatával telepítheti, futtassa a dotnet add package System.Threading.Tasks.Dataflow.

Konstruktorok

Name Description
JoinBlock<T1,T2>()

Új inicializálása JoinBlock<T1,T2>.

JoinBlock<T1,T2>(GroupingDataflowBlockOptions)

Új inicializálása JoinBlock<T1,T2>.

Tulajdonságok

Name Description
Completion

Task Lekéri az adatfolyam-blokk aszinkron műveletét és befejezését ábrázoló értéket.

OutputCount

Lekéri a blokkból fogadandó kimeneti elemek számát.

Target1

Lekéri az első típusú üzenetek felajánlására használható célértéket.

Target2

Lekéri a második típusú üzenetek felajánlására használható célértéket.

Metódusok

Name Description
Complete()

Azt jelzi IDataflowBlock , hogy nem fogadhat el és nem hozhat létre több üzenetet, és nem használ fel több elhalasztott üzenetet.

Equals(Object)

Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal.

(Öröklődés forrása Object)
GetHashCode()

Ez az alapértelmezett kivonatoló függvény.

(Öröklődés forrása Object)
GetType()

Lekéri az Type aktuális példányt.

(Öröklődés forrása Object)
LinkTo(ITargetBlock<Tuple<T1,T2>>, DataflowLinkOptions)

A megadotthoz csatolja a ISourceBlock<TOutput> elemet ITargetBlock<TInput> .

MemberwiseClone()

Az aktuális Objectpéldány sekély másolatát hozza létre.

(Öröklődés forrása Object)
ToString()

Egy sztringet ad vissza, amely a példány formázott nevét IDataflowBlock jelöli.

TryReceive(Predicate<Tuple<T1,T2>>, Tuple<T1,T2>)

Egy elérhető kimeneti elem szinkronizálási kísérlete a IReceivableSourceBlock<TOutput>.

TryReceiveAll(IList<Tuple<T1,T2>>)

Az összes rendelkezésre álló elem szinkron fogadására tett kísérletek a IReceivableSourceBlock<TOutput>.

Explicit interfész-implementációk

Name Description
IDataflowBlock.Fault(Exception)

IDataflowBlock A befejezést egy állapotban Faulted okozza.

ISourceBlock<Tuple<T1,T2>>.ConsumeMessage(DataflowMessageHeader, ITargetBlock<Tuple<T1,T2>>, Boolean)

Átadja a példány által DataflowMessageHeaderISourceBlock<TOutput> azonosított üzenet tulajdonjogát a ITargetBlock<TInput>következőnek: .

ISourceBlock<Tuple<T1,T2>>.ReleaseReservation(DataflowMessageHeader, ITargetBlock<Tuple<T1,T2>>)

Mentesíti a jogot, hogy átadja a tulajdonjogát az üzenet által DataflowMessageHeader azonosított az ebből ISourceBlock<TOutput> a ITargetBlock<TInput>.

ISourceBlock<Tuple<T1,T2>>.ReserveMessage(DataflowMessageHeader, ITargetBlock<Tuple<T1,T2>>)

Fenntartja a jogot, hogy az üzenet DataflowMessageHeader által azonosított tulajdonjogot átadja a ISourceBlock<TOutput>ITargetBlock<TInput>következőnek: .

Bővítő metódusok

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

Új IObservable<T> absztrakciót hoz létre a ISourceBlock<TOutput>.

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

A megadott szűrővel csatolja a ISourceBlock<TOutput> megadotthoz ITargetBlock<TInput> .

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

A megadott szűrővel csatolja a ISourceBlock<TOutput> megadotthoz ITargetBlock<TInput> .

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

A megadotthoz csatolja a ISourceBlock<TOutput> elemet ITargetBlock<TInput>.

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

Task<TResult> A rendelkezésre álló kimenet forrását aszinkron módon figyeli.

OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>)

Task<TResult> A rendelkezésre álló kimenet forrását aszinkron módon figyeli.

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

Szinkron módon kap egy értéket egy megadott forrástól, és egy jogkivonatot biztosít a művelet megszakításához.

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

Szinkron módon kap egy értéket egy megadott forrástól, amely egy jogkivonatot biztosít a művelet megszakításához és egy opcionális időtúllépési időköz megfigyeléséhez.

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

Szinkron módon kap egy értéket egy megadott forrástól, figyelembe véve az opcionális időtúllépési időszakot.

Receive<TOutput>(ISourceBlock<TOutput>)

Szinkron módon kap egy értéket egy megadott forrásból.

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

Létrehoz egy olyan alkalmazást IAsyncEnumerable<T> , amely lehetővé teszi az összes adat fogadását a forrásból.

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

Aszinkron módon kap egy értéket egy megadott forrástól, és egy jogkivonatot biztosít a művelet megszakításához.

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

Aszinkron módon kap egy értéket egy megadott forrástól, amely jogkivonatot biztosít a művelet megszakításához és egy opcionális időtúllépési időköz megfigyeléséhez.

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

Aszinkron módon kap egy értéket egy megadott forrástól, egy opcionális időtúllépési időszakot figyelve.

ReceiveAsync<TOutput>(ISourceBlock<TOutput>)

Aszinkron módon egy adott forrásból kap értéket.

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

Megkísérli szinkronizálva fogadni az elemet a ISourceBlock<TOutput>.

A következőre érvényes: