JoinBlock<T1,T2> Classe

Definizione

Fornisce un blocco di flussi di dati che unisce più origini del flusso di dati, non necessariamente dello stesso tipo, in attesa dell'arrivo di un elemento per ogni tipo prima che vengano rilasciati insieme come tupla costituita da un elemento per 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))

Parametri di tipo

T1

Specifica il tipo di dati accettati dalla prima destinazione del blocco.

T2

Specifica il tipo di dati accettati dalla seconda destinazione del blocco.

Ereditarietà
JoinBlock<T1,T2>
Implementazioni

Commenti

Note

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, scegliere Gestisci pacchetti NuGet dal menu Project e cercare online il 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.

Costruttori

Nome Descrizione
JoinBlock<T1,T2>()

Inizializza un nuovo JoinBlock<T1,T2>oggetto .

JoinBlock<T1,T2>(GroupingDataflowBlockOptions)

Inizializza un nuovo JoinBlock<T1,T2>oggetto .

Proprietà

Nome Descrizione
Completion

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

OutputCount

Ottiene il numero di elementi di output disponibili da ricevere da questo blocco.

Target1

Ottiene una destinazione che può essere utilizzata per offrire messaggi del primo tipo.

Target2

Ottiene una destinazione che può essere utilizzata per offrire messaggi del secondo tipo.

Metodi

Nome Descrizione
Complete()

Segnala all'oggetto IDataflowBlock che non deve accettare né produrre altri messaggi né utilizzare altri messaggi posticipati.

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene il Type dell'istanza corrente.

(Ereditato da Object)
LinkTo(ITargetBlock<Tuple<T1,T2>>, DataflowLinkOptions)

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

MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
ToString()

Restituisce una stringa che rappresenta il nome formattato di questa IDataflowBlock istanza.

TryReceive(Predicate<Tuple<T1,T2>>, Tuple<T1,T2>)

Tenta di ricevere in modo sincrono un elemento di output disponibile da IReceivableSourceBlock<TOutput>.

TryReceiveAll(IList<Tuple<T1,T2>>)

Tenta di ricevere in modo sincrono tutti gli elementi disponibili da IReceivableSourceBlock<TOutput>.

Implementazioni dell'interfaccia esplicita

Nome Descrizione
IDataflowBlock.Fault(Exception)

Fa sì che l'oggetto IDataflowBlock venga completato in uno Faulted stato.

ISourceBlock<Tuple<T1,T2>>.ConsumeMessage(DataflowMessageHeader, ITargetBlock<Tuple<T1,T2>>, Boolean)

Passa la proprietà del messaggio identificato da da DataflowMessageHeader questa ISourceBlock<TOutput> istanza a ITargetBlock<TInput>.

ISourceBlock<Tuple<T1,T2>>.ReleaseReservation(DataflowMessageHeader, ITargetBlock<Tuple<T1,T2>>)

Rilascia il diritto di passare la proprietà del messaggio identificato da DataflowMessageHeader da questo ISourceBlock<TOutput> all'oggetto ITargetBlock<TInput>.

ISourceBlock<Tuple<T1,T2>>.ReserveMessage(DataflowMessageHeader, ITargetBlock<Tuple<T1,T2>>)

Si riserva il diritto di passare la proprietà del messaggio identificato da DataflowMessageHeader da questo ISourceBlock<TOutput> all'oggetto ITargetBlock<TInput>.

Metodi di estensione

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

Crea una nuova IObservable<T> astrazione su ISourceBlock<TOutput>.

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

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

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

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

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

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

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

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

OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>)

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

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, 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.

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>)

Riceve in modo sincrono un valore 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, 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.

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>)

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

TryReceive<TOutput>(IReceivableSourceBlock<TOutput>, TOutput)

Tenta di ricevere in modo sincrono un elemento da ISourceBlock<TOutput>.

Si applica a