IPropagatorBlock<TInput,TOutput> Interface
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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
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. |