IPropagatorBlock<TInput,TOutput> Interface

Definição

Representa um bloco de fluxo de dados que é um destino para dados e uma fonte de dados.

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>
Public Interface IPropagatorBlock(Of In TInput, Out TOutput)
Implements ISourceBlock(Of Out TOutput), ITargetBlock(Of In TInput)

Parâmetros de tipo

TInput

Especifica o tipo de dados aceitos pelo IPropagatorBlock<TInput,TOutput>.

Este parâmetro de tipo é contravariante. Isso significa que é possível usar o tipo especificado ou qualquer tipo menos derivado. Para obter mais informações sobre covariância e contravariância, consulte Covariância e contravariância em genéricos.
TOutput

Especifica o tipo de dados fornecidos pelo IPropagatorBlock<TInput,TOutput>.

Este parâmetro de tipo é covariante. Isso significa que é possível usar o tipo especificado ou qualquer tipo mais derivado. Para obter mais informações sobre covariância e contravariância, consulte Covariância e contravariância em genéricos.
Derivado
Implementações

Comentários

Note

A Biblioteca de Fluxo de Dados TPL (o namespace System.Threading.Tasks.Dataflow) não é distribuída com .NET. Para instalar o namespace System.Threading.Tasks.Dataflow no Visual Studio, abra seu projeto, escolha Gerenciar Pacotes NuGet no menu do Projeto e pesquise online o pacote System.Threading.Tasks.Dataflow. Como alternativa, instale-o usando a CLI do .NET Core e execute dotnet add package System.Threading.Tasks.Dataflow.

Propriedades

Nome Description
Completion

Obtém um Task que representa a operação assíncrona e a conclusão do bloco de fluxo de dados.

(Herdado de IDataflowBlock)

Métodos

Nome Description
Complete()

Sinaliza para IDataflowBlock que ele não deve aceitar nem produzir mais mensagens nem consumir mais mensagens adiadas.

(Herdado de IDataflowBlock)
ConsumeMessage(DataflowMessageHeader, ITargetBlock<TOutput>, Boolean)

Chamado por um vinculado ITargetBlock<TInput> para aceitar e consumir um DataflowMessageHeader oferecido anteriormente por isso ISourceBlock<TOutput>.

(Herdado de ISourceBlock<TOutput>)
Fault(Exception)

Faz com que a IDataflowBlock conclusão seja concluída em um Faulted estado.

(Herdado de IDataflowBlock)
LinkTo(ITargetBlock<TOutput>, DataflowLinkOptions)

Vincula o ISourceBlock<TOutput> link para o especificado ITargetBlock<TInput>.

(Herdado de ISourceBlock<TOutput>)
OfferMessage(DataflowMessageHeader, TInput, ISourceBlock<TInput>, Boolean)

Oferece uma mensagem para o ITargetBlock<TInput>destino, dando ao destino a oportunidade de consumir ou adiar a mensagem.

(Herdado de ITargetBlock<TInput>)
ReleaseReservation(DataflowMessageHeader, ITargetBlock<TOutput>)

Chamado por um vinculado ITargetBlock<TInput> para liberar um anteriormente reservado DataflowMessageHeader por este ISourceBlock<TOutput>.

(Herdado de ISourceBlock<TOutput>)
ReserveMessage(DataflowMessageHeader, ITargetBlock<TOutput>)

Chamado por um vinculado ITargetBlock<TInput> para reservar um oferecido DataflowMessageHeader anteriormente por isso ISourceBlock<TOutput>.

(Herdado de ISourceBlock<TOutput>)

Métodos de Extensão

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

Cria uma nova IObservable<T> abstração sobre o ISourceBlock<TOutput>.

AsObserver<TInput>(ITargetBlock<TInput>)

Cria uma nova IObserver<T> abstração sobre o ITargetBlock<TInput>.

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

Vincula o ISourceBlock<TOutput> arquivo ao especificado ITargetBlock<TInput> usando o filtro especificado.

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

Vincula o ISourceBlock<TOutput> arquivo ao especificado ITargetBlock<TInput> usando o filtro especificado.

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

Vincula o ISourceBlock<TOutput> link para o especificado ITargetBlock<TInput>.

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

Fornece um Task<TResult> que monitora assíncronamente a origem da saída disponível.

OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>)

Fornece um Task<TResult> que monitora assíncronamente a origem da saída disponível.

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

Posta um item no ITargetBlock<TInput>.

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

Recebe de forma síncrona um valor de uma origem especificada e fornece um token para cancelar a operação.

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

Recebe de forma síncrona um valor de uma origem especificada, fornecendo um token para cancelar a operação e observando um intervalo de tempo limite opcional.

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

Recebe de forma síncrona um valor de uma origem especificada, observando um período de tempo limite opcional.

Receive<TOutput>(ISourceBlock<TOutput>)

Recebe de forma síncrona um valor de uma origem especificada.

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

Recebe de forma assíncrona um valor de uma origem especificada e fornece um token para cancelar a operação.

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

Recebe de forma assíncrona um valor de uma origem especificada, fornecendo um token para cancelar a operação e observando um intervalo de tempo limite opcional.

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

Recebe de forma assíncrona um valor de uma origem especificada, observando um período de tempo limite opcional.

ReceiveAsync<TOutput>(ISourceBlock<TOutput>)

Recebe de forma assíncrona um valor de uma origem especificada.

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

Oferece de forma assíncrona uma mensagem para o bloco de mensagens de destino, permitindo o adiamento.

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

Oferece de forma assíncrona uma mensagem para o bloco de mensagens de destino, permitindo o adiamento.

Aplica-se a