JoinBlock<T1,T2> Classe
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.
Fornece um bloco de fluxo de dados que se une a várias fontes de fluxo de dados, não necessariamente do mesmo tipo, aguardando que um item chegue para cada tipo antes que todos sejam lançados juntos como uma tupla que consiste em um item por tipo.
generic <typename T1, typename T2>
public ref class JoinBlock sealed : System::Threading::Tasks::Dataflow::IReceivableSourceBlock<Tuple<T1, T2> ^>, System::Threading::Tasks::Dataflow::ISourceBlock<Tuple<T1, T2> ^>
public sealed class JoinBlock<T1,T2> : System.Threading.Tasks.Dataflow.IReceivableSourceBlock<Tuple<T1,T2>>, System.Threading.Tasks.Dataflow.ISourceBlock<Tuple<T1,T2>>
type JoinBlock<'T1, 'T2> = class
interface IReceivableSourceBlock<'T1 * 'T2>
interface ISourceBlock<'T1 * 'T2>
interface IDataflowBlock
Public NotInheritable Class JoinBlock(Of T1, T2)
Implements IReceivableSourceBlock(Of Tuple(Of T1, T2)), ISourceBlock(Of Tuple(Of T1, T2))
Parâmetros de tipo
- T1
Especifica o tipo de dados aceitos pelo primeiro destino do bloco.
- T2
Especifica o tipo de dados aceitos pelo segundo destino do bloco.
- Herança
-
JoinBlock<T1,T2>
- Implementações
-
IDataflowBlock IReceivableSourceBlock<Tuple<T1,T2>> ISourceBlock<Tuple<T1,T2>> ISourceBlock<TOutput>
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.
Construtores
| Nome | Description |
|---|---|
| JoinBlock<T1,T2>() |
Inicializa um novo JoinBlock<T1,T2>. |
| JoinBlock<T1,T2>(GroupingDataflowBlockOptions) |
Inicializa um novo JoinBlock<T1,T2>. |
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. |
| OutputCount |
Obtém o número de itens de saída disponíveis para serem recebidos desse bloco. |
| Target1 |
Obtém um destino que pode ser usado para oferecer mensagens do primeiro tipo. |
| Target2 |
Obtém um destino que pode ser usado para oferecer mensagens do segundo tipo. |
Métodos
| Nome | Description |
|---|---|
| Complete() |
Sinaliza para IDataflowBlock que ele não deve aceitar nem produzir mais mensagens nem consumir mais mensagens adiadas. |
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| GetHashCode() |
Serve como a função hash predefinida. (Herdado de Object) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| LinkTo(ITargetBlock<Tuple<T1,T2>>, DataflowLinkOptions) |
Vincula o ISourceBlock<TOutput> link para o especificado ITargetBlock<TInput> . |
| MemberwiseClone() |
Cria uma cópia superficial do Objectatual. (Herdado de Object) |
| ToString() |
Retorna uma cadeia de caracteres que representa o nome formatado dessa IDataflowBlock instância. |
| TryReceive(Predicate<Tuple<T1,T2>>, Tuple<T1,T2>) |
Tenta receber de forma síncrona um item de saída disponível do IReceivableSourceBlock<TOutput>. |
| TryReceiveAll(IList<Tuple<T1,T2>>) |
Tenta receber síncronamente todos os itens disponíveis do IReceivableSourceBlock<TOutput>. |
Implantações explícitas de interface
| Nome | Description |
|---|---|
| IDataflowBlock.Fault(Exception) |
Faz com que a IDataflowBlock conclusão seja concluída em um Faulted estado. |
| ISourceBlock<Tuple<T1,T2>>.ConsumeMessage(DataflowMessageHeader, ITargetBlock<Tuple<T1,T2>>, Boolean) |
Passa a propriedade da mensagem identificada por DataflowMessageHeader essa ISourceBlock<TOutput> instância para a ITargetBlock<TInput>. |
| ISourceBlock<Tuple<T1,T2>>.ReleaseReservation(DataflowMessageHeader, ITargetBlock<Tuple<T1,T2>>) |
Libera o direito de passar a propriedade da mensagem identificada por DataflowMessageHeader ela ISourceBlock<TOutput> para o ITargetBlock<TInput>. |
| ISourceBlock<Tuple<T1,T2>>.ReserveMessage(DataflowMessageHeader, ITargetBlock<Tuple<T1,T2>>) |
Reserva-se o direito de passar a propriedade da mensagem identificada por DataflowMessageHeader ela ISourceBlock<TOutput> para .ITargetBlock<TInput> |
Métodos de Extensão
| Nome | Description |
|---|---|
| AsObservable<TOutput>(ISourceBlock<TOutput>) |
Cria uma nova IObservable<T> abstração sobre o ISourceBlock<TOutput>. |
| 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. |
| 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. |
| TryReceive<TOutput>(IReceivableSourceBlock<TOutput>, TOutput) |
Tenta receber um item de forma síncrona do ISourceBlock<TOutput>. |