Partager via


IPropagatorBlock<TInput,TOutput> Interface

Définition

Représente un bloc de flux de données qui est une cible pour les données et une source de données.

generic <typename TInput, typename TOutput>
public interface class IPropagatorBlock : System::Threading::Tasks::Dataflow::ISourceBlock<TOutput>, System::Threading::Tasks::Dataflow::ITargetBlock<TInput>
public interface IPropagatorBlock<in TInput,out TOutput> : System.Threading.Tasks.Dataflow.ISourceBlock<out TOutput>, System.Threading.Tasks.Dataflow.ITargetBlock<in TInput>
type IPropagatorBlock<'Input, 'Output> = interface
    interface ITargetBlock<'Input>
    interface IDataflowBlock
    interface ISourceBlock<'Output>
type IPropagatorBlock<'Input, 'Output> = interface
    interface IDataflowBlock
    interface ISourceBlock<'Output>
    interface ITargetBlock<'Input>
Public Interface IPropagatorBlock(Of In TInput, Out TOutput)
Implements ISourceBlock(Of Out TOutput), ITargetBlock(Of In TInput)

Paramètres de type

TInput

Spécifie le type des données accepté par le IPropagatorBlock<TInput,TOutput>.

Ce paramètre de type est contravariant. Cela signifie que vous pouvez utiliser le type spécifié ou tout type moins dérivé. Pour plus d’informations sur la covariance et la contravariance, consultez Covariance et contravariance dans les génériques.
TOutput

Spécifie le type des données fourni par le IPropagatorBlock<TInput,TOutput>.

Ce paramètre de type est covariant. Cela signifie que vous pouvez utiliser le type spécifié ou tout type plus dérivé. Pour plus d’informations sur la covariance et la contravariance, consultez Covariance et contravariance dans les génériques.
Dérivé
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.

Propriétés

Completion

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

(Hérité de IDataflowBlock)

Méthodes

Complete()

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

(Hérité de IDataflowBlock)
ConsumeMessage(DataflowMessageHeader, ITargetBlock<TOutput>, Boolean)

Appelé par un ITargetBlock<TInput> lié pour recevoir et utiliser un DataflowMessageHeader précédemment proposé par ce ISourceBlock<TOutput>.

(Hérité de ISourceBlock<TOutput>)
Fault(Exception)

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

(Hérité de IDataflowBlock)
LinkTo(ITargetBlock<TOutput>, DataflowLinkOptions)

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

(Hérité de ISourceBlock<TOutput>)
OfferMessage(DataflowMessageHeader, TInput, ISourceBlock<TInput>, Boolean)

Offre un message au ITargetBlock<TInput>, donnant à la cible la possibilité d'utiliser ou de différer le message.

(Hérité de ITargetBlock<TInput>)
ReleaseReservation(DataflowMessageHeader, ITargetBlock<TOutput>)

Appelé par un ITargetBlock<TInput> lié pour libérer un DataflowMessageHeader précédemment réservé par ce ISourceBlock<TOutput>.

(Hérité de ISourceBlock<TOutput>)
ReserveMessage(DataflowMessageHeader, ITargetBlock<TOutput>)

Appelé par un ITargetBlock<TInput> lié pour réserver un DataflowMessageHeader précédemment proposé par ce ISourceBlock<TOutput>.

(Hérité de ISourceBlock<TOutput>)

Méthodes d’extension

AsObservable<TOutput>(ISourceBlock<TOutput>)

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

AsObserver<TInput>(ITargetBlock<TInput>)

Crée une abstraction IObserver<T> sur ITargetBlock<TInput>.

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

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

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

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

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

Lie le ISourceBlock<TOutput> au 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.

Post<TInput>(ITargetBlock<TInput>, TInput)

Publie un élément à ITargetBlock<TInput>.

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.

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.

SendAsync<TInput>(ITargetBlock<TInput>, TInput)

Propose de façon asynchrone un message au bloc de message cible, en autorisant l'ajournement.

SendAsync<TInput>(ITargetBlock<TInput>, TInput, CancellationToken)

Propose de façon asynchrone un message au bloc de message cible, en autorisant l'ajournement.

S’applique à