Condividi tramite


IPropagatorBlock<TInput,TOutput> Interfaccia

Definizione

Rappresenta un blocco del flusso di dati che rappresenta sia la destinazione sia l'origine dei dati.

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)

Parametri di tipo

TInput

Specifica il tipo di dati accettati da IPropagatorBlock<TInput,TOutput>.

Questo parametro di tipo è controvariante, ovvero puoi usare il tipo specificato o qualsiasi tipo meno derivato. Per altre informazioni sulla covarianza e la controvarianza, vedi Covarianza e controvarianza nei generics.
TOutput

Specifica il tipo di dati forniti da IPropagatorBlock<TInput,TOutput>.

Questo parametro di tipo è covariante, ovvero puoi usare il tipo specificato o qualsiasi tipo più derivato. Per altre informazioni sulla covarianza e la controvarianza, vedi Covarianza e controvarianza nei generics.
Derivato
Implementazioni

Commenti

Nota

La libreria del flusso di dati TPL (spazio dei nomi System.Threading.Tasks.Dataflow) non viene distribuita con .NET. Per installare lo spazio dei nomi System.Threading.Tasks.Dataflow in Visual Studio, aprire il progetto in Visual Studio, scegliere Gestisci pacchetti NuGet dal menu Progetto ed eseguire una ricerca online del pacchetto System.Threading.Tasks.Dataflow. In alternativa, per installarlo usando l'interfaccia della riga di comando di .NET Core, eseguire dotnet add package System.Threading.Tasks.Dataflow.

Proprietà

Completion

Ottiene un Task che rappresenta l'operazione asincrona e il completamento del blocco di flussi di dati.

(Ereditato da IDataflowBlock)

Metodi

Complete()

Segnala al IDataflowBlock che non deve accettare o produrre altri messaggi e non deve utilizzare altri messaggi posticipati.

(Ereditato da IDataflowBlock)
ConsumeMessage(DataflowMessageHeader, ITargetBlock<TOutput>, Boolean)

Chiamato da un ITargetBlock<TInput> collegato per accettare e utilizzare DataflowMessageHeader precedentemente offerto da questo ISourceBlock<TOutput>.

(Ereditato da ISourceBlock<TOutput>)
Fault(Exception)

Determina il completamento di IDataflowBlock in uno stato di Faulted .

(Ereditato da IDataflowBlock)
LinkTo(ITargetBlock<TOutput>, DataflowLinkOptions)

Collega l'oggetto ISourceBlock<TOutput> all'oggetto specificato ITargetBlock<TInput>.

(Ereditato da ISourceBlock<TOutput>)
OfferMessage(DataflowMessageHeader, TInput, ISourceBlock<TInput>, Boolean)

Offre un messaggio al ITargetBlock<TInput> e fornisce alla destinazione la possibilità di utilizzare o posticipare il messaggio.

(Ereditato da ITargetBlock<TInput>)
ReleaseReservation(DataflowMessageHeader, ITargetBlock<TOutput>)

Chiamato da un ITargetBlock<TInput> collegato per rilasciare un DataflowMessageHeader precedentemente riservato da questo ISourceBlock<TOutput>.

(Ereditato da ISourceBlock<TOutput>)
ReserveMessage(DataflowMessageHeader, ITargetBlock<TOutput>)

Chiamato da un ITargetBlock<TInput> collegato per conservare un DataflowMessageHeader precedentemente offerto da questo ISourceBlock<TOutput>.

(Ereditato da ISourceBlock<TOutput>)

Metodi di estensione

AsObservable<TOutput>(ISourceBlock<TOutput>)

Crea una nuova astrazione IObservable<T> rispetto a ISourceBlock<TOutput>.

AsObserver<TInput>(ITargetBlock<TInput>)

Crea una nuova astrazione IObserver<T> rispetto a ITargetBlock<TInput>.

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

Collega l'oggetto ISourceBlock<TOutput> all'oggetto specificato ITargetBlock<TInput>.

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

Collega l'oggetto ISourceBlock<TOutput> all'oggetto specificato utilizzando il filtro specificato ITargetBlock<TInput> .

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

Collega l'oggetto ISourceBlock<TOutput> all'oggetto specificato utilizzando il filtro specificato ITargetBlock<TInput> .

OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>)

Fornisce un oggetto Task<TResult> che monitora in modo asincrono l'origine per l'output disponibile.

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

Fornisce un oggetto Task<TResult> che monitora in modo asincrono l'origine per l'output disponibile.

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

Inserisce un elemento nell'oggetto ITargetBlock<TInput>.

Receive<TOutput>(ISourceBlock<TOutput>)

Riceve un valore in modo sincrono da un'origine specificata.

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

Riceve in modo sincrono un valore da un'origine specificata e fornisce un token per annullare l'operazione.

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

Riceve in modo sincrono un valore da un'origine specificata, osservando un periodo di timeout facoltativo.

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

Riceve in modo sincrono un valore da un'origine specificata, fornendo un token per annullare l'operazione e osservando un intervallo di timeout facoltativo.

ReceiveAsync<TOutput>(ISourceBlock<TOutput>)

Riceve un valore in modo asincrono da un'origine specificata.

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

Riceve in modo asincrono un valore da un'origine specificata e fornisce un token per annullare l'operazione.

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

Riceve in modo asincrono un valore da un'origine specificata, osservando un periodo di timeout facoltativo.

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

Riceve in modo asincrono un valore da un'origine specificata, fornendo un token per annullare l'operazione e osservando un intervallo di timeout facoltativo.

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

In modo asincrono offre un messaggio al blocco di messaggi di destinazione, consentendo il rinvio.

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

In modo asincrono offre un messaggio al blocco di messaggi di destinazione, consentendo il rinvio.

Si applica a