JoinBlock<T1,T2> Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Tillhandahåller ett dataflödesblock som kopplas till flera dataflödeskällor, inte nödvändigtvis av samma typ, i väntan på att ett objekt ska tas emot för varje typ innan de släpps tillsammans som en tupplar som består av ett objekt per typ.
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))
Typparametrar
- T1
Anger vilken typ av data som godkänns av blockets första mål.
- T2
Anger vilken typ av data som godkänns av blockets andra mål.
- Arv
-
JoinBlock<T1,T2>
- Implementeringar
-
IDataflowBlock IReceivableSourceBlock<Tuple<T1,T2>> ISourceBlock<Tuple<T1,T2>> ISourceBlock<TOutput>
Kommentarer
Note
TPL-dataflödesbiblioteket (System.Threading.Tasks.Dataflow-namnområdet) distribueras inte med .NET. Om du vill installera System.Threading.Tasks.Dataflow-namnområdet i Visual Studio öppnar du projektet, väljer Hantera NuGet-paket från menyn Project och söker online efter System.Threading.Tasks.Dataflow-paketet. Alternativt, för att installera det med hjälp av .NET Core CLI, kör dotnet add package System.Threading.Tasks.Dataflow.
Konstruktorer
| Name | Description |
|---|---|
| JoinBlock<T1,T2>() |
Initierar en ny JoinBlock<T1,T2>. |
| JoinBlock<T1,T2>(GroupingDataflowBlockOptions) |
Initierar en ny JoinBlock<T1,T2>. |
Egenskaper
| Name | Description |
|---|---|
| Completion |
Hämtar en Task som representerar den asynkrona åtgärden och slutförandet av dataflödesblocket. |
| OutputCount |
Hämtar antalet tillgängliga utdataobjekt som ska tas emot från det här blocket. |
| Target1 |
Hämtar ett mål som kan användas för att erbjuda meddelanden av den första typen. |
| Target2 |
Hämtar ett mål som kan användas för att erbjuda meddelanden av den andra typen. |
Metoder
| Name | Description |
|---|---|
| Complete() |
Signaler till att den IDataflowBlock inte bör acceptera eller producera fler meddelanden eller förbruka fler uppskjutna meddelanden. |
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| LinkTo(ITargetBlock<Tuple<T1,T2>>, DataflowLinkOptions) |
ISourceBlock<TOutput> Länkar till angiven ITargetBlock<TInput> . |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| ToString() |
Returnerar en sträng som representerar det formaterade namnet på den här IDataflowBlock instansen. |
| TryReceive(Predicate<Tuple<T1,T2>>, Tuple<T1,T2>) |
Försök att synkront ta emot ett tillgängligt utdataobjekt från IReceivableSourceBlock<TOutput>. |
| TryReceiveAll(IList<Tuple<T1,T2>>) |
Försöker ta emot alla tillgängliga objekt synkront från IReceivableSourceBlock<TOutput>. |
Explicita gränssnittsimplementeringar
| Name | Description |
|---|---|
| IDataflowBlock.Fault(Exception) |
Gör att den IDataflowBlock slutförs i ett Faulted tillstånd. |
| ISourceBlock<Tuple<T1,T2>>.ConsumeMessage(DataflowMessageHeader, ITargetBlock<Tuple<T1,T2>>, Boolean) |
Skickar ägarskapet för meddelandet som identifieras av från den DataflowMessageHeader här ISourceBlock<TOutput> instansen ITargetBlock<TInput>till . |
| ISourceBlock<Tuple<T1,T2>>.ReleaseReservation(DataflowMessageHeader, ITargetBlock<Tuple<T1,T2>>) |
Frisläpper rätten att överföra ägarskapet för det meddelande som identifieras av DataflowMessageHeader från detta ISourceBlock<TOutput> till ITargetBlock<TInput>. |
| ISourceBlock<Tuple<T1,T2>>.ReserveMessage(DataflowMessageHeader, ITargetBlock<Tuple<T1,T2>>) |
Förbehåller sig rätten att överföra ägarskapet för meddelandet som identifieras av DataflowMessageHeader från detta ISourceBlock<TOutput> till ITargetBlock<TInput>. |
Tilläggsmetoder
| Name | Description |
|---|---|
| AsObservable<TOutput>(ISourceBlock<TOutput>) |
Skapar en ny IObservable<T> abstraktion över ISourceBlock<TOutput>. |
| LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>, DataflowLinkOptions, Predicate<TOutput>) |
ISourceBlock<TOutput> Länkar till det angivna ITargetBlock<TInput> med det angivna filtret. |
| LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>, Predicate<TOutput>) |
ISourceBlock<TOutput> Länkar till det angivna ITargetBlock<TInput> med det angivna filtret. |
| LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>) |
ISourceBlock<TOutput> Länkar till angiven ITargetBlock<TInput>. |
| OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>, CancellationToken) |
Tillhandahåller en Task<TResult> som asynkront övervakar källan för tillgängliga utdata. |
| OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>) |
Tillhandahåller en Task<TResult> som asynkront övervakar källan för tillgängliga utdata. |
| Receive<TOutput>(ISourceBlock<TOutput>, CancellationToken) |
Tar synkront emot ett värde från en angiven källa och tillhandahåller en token för att avbryta åtgärden. |
| Receive<TOutput>(ISourceBlock<TOutput>, TimeSpan, CancellationToken) |
Tar synkront emot ett värde från en angiven källa, vilket ger en token för att avbryta åtgärden och observerar ett valfritt tidsgränsintervall. |
| Receive<TOutput>(ISourceBlock<TOutput>, TimeSpan) |
Tar synkront emot ett värde från en angiven källa och observerar en valfri tidsgräns. |
| Receive<TOutput>(ISourceBlock<TOutput>) |
Tar synkront emot ett värde från en angiven källa. |
| ReceiveAllAsync<TOutput>(IReceivableSourceBlock<TOutput>, CancellationToken) |
Skapar en IAsyncEnumerable<T> som gör det möjligt att ta emot alla data från källan. |
| ReceiveAsync<TOutput>(ISourceBlock<TOutput>, CancellationToken) |
Tar asynkront emot ett värde från en angiven källa och tillhandahåller en token för att avbryta åtgärden. |
| ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan, CancellationToken) |
Asynkront tar emot ett värde från en angiven källa, vilket ger en token för att avbryta åtgärden och observera ett valfritt tidsgränsintervall. |
| ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan) |
Tar asynkront emot ett värde från en angiven källa och observerar en valfri tidsgräns. |
| ReceiveAsync<TOutput>(ISourceBlock<TOutput>) |
Tar asynkront emot ett värde från en angiven källa. |
| TryReceive<TOutput>(IReceivableSourceBlock<TOutput>, TOutput) |
Försöker ta emot ett objekt synkront från ISourceBlock<TOutput>. |