Sdílet prostřednictvím


BatchedJoinBlock<T1,T2,T3> Třída

Definice

Poskytuje blok toku dat, který zadává do dávek zadaný počet vstupů potenciálně odlišných typů poskytovaných jednomu nebo více cílům.

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

Parametry typu

T1

Určuje typ dat přijatých prvním cílem bloku.

T2

Určuje typ dat přijatých druhým cílem bloku.

T3

Určuje typ dat přijatých třetím cílem bloku.

Dědičnost
BatchedJoinBlock<T1,T2,T3>
Implementuje

Poznámky

Poznámka

Knihovna toku dat TPL (obor názvů) se s .NET nedistribuuje System.Threading.Tasks.Dataflow . Pokud chcete nainstalovat System.Threading.Tasks.Dataflow obor názvů v sadě Visual Studio, otevřete projekt, v nabídce Projekt zvolte Spravovat balíčky NuGet a vyhledejte balíček onlineSystem.Threading.Tasks.Dataflow. Pokud ho chcete nainstalovat pomocí rozhraní příkazového řádku .NET Core, spusťte příkaz dotnet add package System.Threading.Tasks.Dataflow.

Konstruktory

BatchedJoinBlock<T1,T2,T3>(Int32)

Inicializuje nový BatchedJoinBlock<T1,T2,T3> se zadanou konfigurací.

BatchedJoinBlock<T1,T2,T3>(Int32, GroupingDataflowBlockOptions)

Inicializuje nový BatchedJoinBlock<T1,T2,T3> se zadanou konfigurací.

Vlastnosti

BatchSize

Získá velikost dávek vygenerovaných tímto BatchedJoinBlock<T1,T2,T3>.

Completion

Získá, Task který představuje asynchronní operaci a dokončení bloku toku dat.

OutputCount

Získá počet výstupních položek, které jsou k dispozici pro přijetí z tohoto bloku.

Target1

Získá cíl, který může být použit k nabízení zpráv prvního typu.

Target2

Získá cíl, který může být použit k nabízení zpráv druhého typu.

Target3

Získá cíl, který může být použit k nabízení zpráv třetího typu.

Metody

Complete()

Signalizuje, IDataflowBlock že by neměl přijímat ani vytvářet žádné další zprávy ani přijímat další odložené zprávy.

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetType()

Získá aktuální Type instanci.

(Zděděno od Object)
LinkTo(ITargetBlock<Tuple<IList<T1>,IList<T2>,IList<T3>>>, DataflowLinkOptions)

Prováže parametr ISourceBlock<TOutput> se zadaným ITargetBlock<TInput> parametrem .

MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje formátovaný název této IDataflowBlock instance.

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

Pokusí se synchronně přijmout dostupnou výstupní položku z objektu IReceivableSourceBlock<TOutput>.

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

Pokusí se synchronně přijmout všechny dostupné položky z .IReceivableSourceBlock<TOutput>

Explicitní implementace rozhraní

IDataflowBlock.Fault(Exception)

Způsobí dokončení ve IDataflowBlockFaulted stavu.

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

Předá vlastnictví zprávy identifikované DataflowMessageHeader z této ISourceBlock<TOutput> instance do ITargetBlock<TInput>.

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

Uvolní právo předat vlastnictví zprávy identifikované DataflowMessageHeader z tohoto ISourceBlock<TOutput> na .ITargetBlock<TInput>

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

Vyhrazuje si právo předat vlastnictví zprávy identifikované DataflowMessageHeader z tohoto ISourceBlock<TOutput>ITargetBlock<TInput>na .

Metody rozšíření

AsObservable<TOutput>(ISourceBlock<TOutput>)

Vytvoří novou IObservable<T> abstrakci pro ISourceBlock<TOutput>.

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

Prováže parametr ISourceBlock<TOutput> se zadaným ITargetBlock<TInput>parametrem .

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

Propojení s ISourceBlock<TOutput> zadaným ITargetBlock<TInput> filtrem.

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

Propojení s ISourceBlock<TOutput> zadaným ITargetBlock<TInput> filtrem.

OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>)

Poskytuje asynchronně Task<TResult> monitoruje zdroj pro dostupný výstup.

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

Poskytuje asynchronně Task<TResult> monitoruje zdroj pro dostupný výstup.

Receive<TOutput>(ISourceBlock<TOutput>)

Synchronně přijímá hodnotu ze zadaného zdroje.

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

Synchronně přijme hodnotu ze zadaného zdroje a poskytne token pro zrušení operace.

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

Synchronně přijímá hodnotu z zadaného zdroje a sleduje volitelné období časového limitu.

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

Synchronně přijímá hodnotu z zadaného zdroje, poskytuje token pro zrušení operace a sleduje volitelný interval časového limitu.

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

Vytvoří objekt IAsyncEnumerable<T> , který umožňuje přijímat všechna data ze zdroje.

ReceiveAsync<TOutput>(ISourceBlock<TOutput>)

Asynchronně přijímá hodnotu ze zadaného zdroje.

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

Asynchronně přijme hodnotu ze zadaného zdroje a poskytne token pro zrušení operace.

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

Asynchronně přijímá hodnotu z zadaného zdroje, přičemž sleduje volitelné období časového limitu.

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

Asynchronně obdrží hodnotu ze zadaného zdroje, poskytuje token pro zrušení operace a sleduje volitelný interval časového limitu.

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

Pokusí se synchronně přijmout položku z objektu ISourceBlock<TOutput>.

Platí pro