BroadcastBlock<T> Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Fornece um buffer para armazenar no máximo um elemento de cada vez, sobrescrevendo cada mensagem com a seguinte à medida que chega.
generic <typename T>
public ref class BroadcastBlock sealed : System::Threading::Tasks::Dataflow::IPropagatorBlock<T, T>, System::Threading::Tasks::Dataflow::IReceivableSourceBlock<T>, System::Threading::Tasks::Dataflow::ISourceBlock<T>, System::Threading::Tasks::Dataflow::ITargetBlock<T>
public sealed class BroadcastBlock<T> : System.Threading.Tasks.Dataflow.IPropagatorBlock<T,T>, System.Threading.Tasks.Dataflow.IReceivableSourceBlock<T>, System.Threading.Tasks.Dataflow.ISourceBlock<T>, System.Threading.Tasks.Dataflow.ITargetBlock<T>
type BroadcastBlock<'T> = class
interface IPropagatorBlock<'T, 'T>
interface ITargetBlock<'T>
interface IDataflowBlock
interface ISourceBlock<'T>
interface IReceivableSourceBlock<'T>
Public NotInheritable Class BroadcastBlock(Of T)
Implements IPropagatorBlock(Of T, T), IReceivableSourceBlock(Of T), ISourceBlock(Of T), ITargetBlock(Of T)
Parâmetros de Tipo Genérico
- T
Especifica o tipo de dados armazenados em buffer por este bloco de fluxo de dados.
- Herança
-
BroadcastBlock<T>
- Implementações
Observações
Note
A biblioteca de fluxo de dados TPL (o namespace System.Threading.Tasks.Dataflow) não é distribuída com o .NET. Para instalar o namespace System.Threading.Tasks.Dataflow no Visual Studio, abra o seu projeto, escolha Gerir Pacotes NuGet no menu Projeto e pesquise o pacote System.Threading.Tasks.Dataflow online. Como alternativa, para instalá-lo usando a CLI do .NET Core, execute dotnet add package System.Threading.Tasks.Dataflow.
BroadcastBlock<T> expõe no máximo um elemento de cada vez. No entanto, ao contrário de WriteOnceBlock<T>, esse elemento será sobrescrito à medida que novos elementos forem fornecidos ao bloco. BroadcastBlock<T> garante que o elemento atual é transmitido para quaisquer alvos ligados antes de permitir que o elemento seja sobrescrito.
Construtores
| Name | Description |
|---|---|
| BroadcastBlock<T>(Func<T,T>, DataflowBlockOptions) |
Inicializa o BroadcastBlock<T> com a função de clonagem especificada e DataflowBlockOptions. |
| BroadcastBlock<T>(Func<T,T>) |
Inicializa o BroadcastBlock<T> com a função de clonagem especificada. |
Propriedades
| Name | Description |
|---|---|
| Completion |
Obtém-se a Task que representa a operação assíncrona e a conclusão do bloco de fluxo de dados. |
Métodos
| Name | Description |
|---|---|
| Complete() |
Sinais para o IDataflowBlock grupo de que 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 função de hash predefinida. (Herdado de Object) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| LinkTo(ITargetBlock<T>, DataflowLinkOptions) |
Liga o ISourceBlock<TOutput> ao especificado ITargetBlock<TInput>. |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| ToString() |
Devolve uma cadeia que representa o nome formatado desta IDataflowBlock instância. |
| TryReceive(Predicate<T>, T) |
Tentativas de receber síncronicamente um item de saída disponível do IReceivableSourceBlock<TOutput>. |
Implementações de Interface Explícita
Métodos da Extensão
| Name | 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>) |
Liga o ISourceBlock<TOutput> ao especificado ITargetBlock<TInput> usando o filtro especificado. |
| LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>, Predicate<TOutput>) |
Liga o ISourceBlock<TOutput> ao especificado ITargetBlock<TInput> usando o filtro especificado. |
| LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>) |
Liga o ISourceBlock<TOutput> ao especificado ITargetBlock<TInput>. |
| OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>, CancellationToken) |
Fornece um Task<TResult> que monitoriza assíncronamente a fonte para a saída disponível. |
| OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>) |
Fornece um Task<TResult> que monitoriza assíncronamente a fonte para a saída disponível. |
| Post<TInput>(ITargetBlock<TInput>, TInput) |
Publica um item no ITargetBlock<TInput>arquivo . |
| Receive<TOutput>(ISourceBlock<TOutput>, CancellationToken) |
O Synchroniously recebe um valor de uma fonte especificada e fornece um token para cancelar a operação. |
| Receive<TOutput>(ISourceBlock<TOutput>, TimeSpan, CancellationToken) |
Synchronally recebe um valor de uma fonte especificada, fornecendo um token para cancelar a operação e observando um intervalo opcional de time-out. |
| Receive<TOutput>(ISourceBlock<TOutput>, TimeSpan) |
Sincronizadamente recebe um valor de uma fonte especificada, observando um período opcional de time-out. |
| Receive<TOutput>(ISourceBlock<TOutput>) |
Recebe síncronicamente um valor de uma fonte especificada. |
| ReceiveAsync<TOutput>(ISourceBlock<TOutput>, CancellationToken) |
De forma assíncrona, recebe um valor de uma fonte especificada e fornece um token para cancelar a operação. |
| ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan, CancellationToken) |
De forma assíncrona, recebe um valor de uma fonte especificada, fornecendo um token para cancelar a operação e observando um intervalo opcional de time-out. |
| ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan) |
De forma assíncrona, recebe um valor de uma fonte especificada, observando um período opcional de time-out. |
| ReceiveAsync<TOutput>(ISourceBlock<TOutput>) |
De forma assíncrona, recebe um valor de uma fonte especificada. |
| SendAsync<TInput>(ITargetBlock<TInput>, TInput, CancellationToken) |
Assíncrono, oferece uma mensagem ao bloco de mensagens alvo, permitindo adiamento. |
| SendAsync<TInput>(ITargetBlock<TInput>, TInput) |
Assíncrono, oferece uma mensagem ao bloco de mensagens alvo, permitindo adiamento. |
| TryReceive<TOutput>(IReceivableSourceBlock<TOutput>, TOutput) |
Tentativas de receber síncronicamente um item do ISourceBlock<TOutput>. |