JoinBlock<T1,T2,T3> Classe

Définition

Fournit un bloc de flux de données qui se joint à plusieurs sources de flux de données, qui ne sont pas nécessairement du même type, en attendant qu’un élément arrive pour chaque type avant qu’ils ne soient tous libérés ensemble sous la forme d’un tuple qui contient un élément par type.

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

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
JoinBlock<T1,T2,T3>
Implémente

Remarques

Note

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

Constructeurs

Nom Description
JoinBlock<T1,T2,T3>()

Initialise un nouveau JoinBlock<T1,T2,T3>.

JoinBlock<T1,T2,T3>(GroupingDataflowBlockOptions)

Initialise un nouveau JoinBlock<T1,T2,T3>.

Propriétés

Nom Description
Completion

Obtient un 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 à recevoir à partir de ce bloc.

Target1

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

Target2

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

Target3

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

Méthodes

Nom Description
Complete()

Signale au IDataflowBlock fait qu’il ne doit pas accepter ni produire plus de messages ni consommer plus de messages reportés.

Equals(Object)

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

(Hérité de Object)
GetHashCode()

Sert de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient la Type de l’instance actuelle.

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

Lie le bloc source au bloc cible spécifié.

MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
ToString()

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

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

Tente de recevoir de manière synchrone un élément de sortie disponible à partir du IReceivableSourceBlock<TOutput>.

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

Tente de recevoir de manière synchrone tous les éléments disponibles à partir du IReceivableSourceBlock<TOutput>.

Implémentations d’interfaces explicites

Nom Description
IDataflowBlock.Fault(Exception)

Provoque la IDataflowBlock fin dans un Faulted état.

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

Transmet la propriété du message identifié par l’instance DataflowMessageHeaderISourceBlock<TOutput> à l’instance ITargetBlock<TInput>.

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

Libère le droit de transmettre la propriété du message identifié par ce DataflowMessageHeaderISourceBlock<TOutput> message à l’objet ITargetBlock<TInput>.

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

Se réserve le droit de transmettre la propriété du message identifié par ce DataflowMessageHeaderISourceBlock<TOutput> message à l’adresse ITargetBlock<TInput>.

Méthodes d’extension

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

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

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

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

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

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

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

Lie le ISourceBlock<TOutput> fichier vers le fichier spécifié ITargetBlock<TInput>.

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

Fournit un Task<TResult> moniteur asynchrone de la source pour la sortie disponible.

OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>)

Fournit un Task<TResult> moniteur asynchrone de la source pour la sortie disponible.

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

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

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

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

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

Reçoit 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, CancellationToken)

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

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

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

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

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

S’applique à