Partager via


BatchedJoinBlock<T1,T2,T3> Classe

Définition

Fournit un bloc de flux de données qui traite par lot un nombre spécifié d'entrées de types potentiellement différents fournis à une ou plusieurs de ses cibles.

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)))

Paramètres de type

T1

Spécifie le type de données accepté par la première cible du bloc.

T2

Spécifie le type de données accepté par la deuxième cible du bloc.

T3

Spécifie le type de données accepté par la troisième cible du bloc.

Héritage
BatchedJoinBlock<T1,T2,T3>
Implémente

Remarques

Notes

La bibliothèque de flux de données TPL (espace de noms System.Threading.Tasks.Dataflow) n'est pas distribuée avec .NET. Pour installer l’espace de noms System.Threading.Tasks.Dataflow dans Visual Studio, ouvrez votre projet, choisissez Gérer les packages NuGet dans le menu Projet, puis recherchez en ligne le package System.Threading.Tasks.Dataflow. Vous pouvez également l’installer à l’aide de l’interface CLI .NET Core en exécutant dotnet add package System.Threading.Tasks.Dataflow.

Constructeurs

BatchedJoinBlock<T1,T2,T3>(Int32)

Initialise un nouveau BatchedJoinBlock<T1,T2,T3> avec la configuration spécifiée.

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

Initialise un nouveau BatchedJoinBlock<T1,T2,T3> avec la configuration spécifiée.

Propriétés

BatchSize

Obtient la taille des lots générés par ce BatchedJoinBlock<T1,T2,T3>.

Completion

Obtient une Task qui représente l'opération asynchrone et l'achèvement du bloc de flux de données.

OutputCount

Obtient le nombre d'éléments de sortie disponibles en provenance de ce bloc.

Target1

Obtient une cible qui peut être utilisée pour offrir des messages du premier type.

Target2

Obtient une cible qui peut être utilisée pour offrir des messages du deuxième type.

Target3

Obtient une cible qui peut être utilisée pour offrir des messages du troisième type.

Méthodes

Complete()

Signale à IDataflowBlock qu'il ne doit plus recevoir ni produire de messages ou utiliser des messages différés.

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
LinkTo(ITargetBlock<Tuple<IList<T1>,IList<T2>,IList<T3>>>, DataflowLinkOptions)

Lie au ISourceBlock<TOutput> spécifié ITargetBlock<TInput> .

MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente le nom mis en forme de cette instance IDataflowBlock.

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

Tente de recevoir de façon synchrone un élément de sortie disponible de IReceivableSourceBlock<TOutput>.

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

Tente de recevoir de façon synchrone tous les éléments disponibles de IReceivableSourceBlock<TOutput>.

Implémentations d’interfaces explicites

IDataflowBlock.Fault(Exception)

Provoque l'achèvement du IDataflowBlock à l'état Faulted.

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

Transmet la propriété du message identifié par le DataflowMessageHeader de cette ISourceBlock<TOutput> instance au ITargetBlock<TInput>.

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

Libère le droit de passer la propriété du message identifié par le DataflowMessageHeader de ce ISourceBlock<TOutput> au ITargetBlock<TInput>.

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

Réserve le droit de passer la propriété du message identifié par le DataflowMessageHeader de ce ISourceBlock<TOutput> au ITargetBlock<TInput>.

Méthodes d’extension

AsObservable<TOutput>(ISourceBlock<TOutput>)

Crée une abstraction IObservable<T> sur ISourceBlock<TOutput>.

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

Lie au ISourceBlock<TOutput> spécifié ITargetBlock<TInput>.

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

Lie au ISourceBlock<TOutput> spécifié ITargetBlock<TInput> à l’aide du filtre spécifié.

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

Lie au ISourceBlock<TOutput> spécifié ITargetBlock<TInput> à l’aide du filtre spécifié.

OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>)

Fournit un Task<TResult> qui surveille de façon asynchrone la source de la sortie disponible.

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

Fournit un Task<TResult> qui surveille de façon asynchrone la source de la sortie disponible.

Receive<TOutput>(ISourceBlock<TOutput>)

Reçoit de façon synchrone une valeur d'une source spécifiée.

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

Reçoit de façon synchrone une valeur d'une source spécifiée et fournit un jeton pour annuler l'opération.

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

Reçoit de façon synchrone une valeur d'une source spécifiée, en observant un délai d'attente facultatif.

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

Reçoit de façon synchrone une valeur d'une source spécifiée, en fournissant un jeton pour annuler l'opération et en observant un délai d'attente facultatif.

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

Crée un IAsyncEnumerable<T> qui permet de recevoir toutes les données de la source.

ReceiveAsync<TOutput>(ISourceBlock<TOutput>)

Reçoit de façon asynchrone une valeur d'une source spécifiée.

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

Accepte de façon asynchrone une valeur d'une source spécifiée et fournit un jeton pour annuler l'opération.

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

Reçoit de façon asynchrone une valeur d'une source spécifiée, en observant un délai d'attente facultatif.

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

Reçoit de façon asynchrone une valeur d'une source spécifiée, en fournissant un jeton pour annuler l'opération et en observant un délai d'attente facultatif.

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

Tente de recevoir de façon synchrone un élément de ISourceBlock<TOutput>.

S’applique à