Namespaces System.Threading
Os namespaces System.Threading, System.Threading.Tasks e System.Threading.Tasks.DataFlow contêm tipos que permitem a programação multi-threaded e simplificam a criação de código simultâneo e assíncrono.
Este tópico apresenta os tipos nos namespaces System.Threading, System.Threading.Tasks e System.Threading.Tasks.DataFlow que são incluídos no .NET para aplicativos da Windows Store ou podem ser instalados e usados para criar aplicativos Windows Store. Observe que o .NET para aplicativos da Windows Store não inclui todos os membros de cada tipo. Para obter informações sobre tipos individuais, consulte os tópicos vinculados. A documentação de um tipo indica quais membros são incluídos no .NET para aplicativos da Windows Store.
Para instalar o namespace System.Threading.Tasks.Dataflow, abra seu projeto no Visual Studio 2012, escolha Gerenciar Pacotes NuGet no menu Projeto e pesquise online o pacote Microsoft.Tpl.Dataflow.
Namespace System.Threading
Tipos com suporte no .NET para aplicativos da Windows Store |
Descrição |
---|---|
A exceção que é lançada quando um thread adquire um objeto Mutex que outro thread abandonou saindo sem liberá-lo. |
|
Notifica um thread de espera em que um evento ocorreu. Essa classe não pode ser herdada. |
|
Permite que várias tarefas trabalhem de forma colaborativa em um algoritmo em paralelo por meio de várias fases. |
|
A exceção que é lançada quando a ação pós-fase de um Barrier falha. |
|
Propaga a notificação de que as operações devem ser canceladas. |
|
Representa um representante de retorno de chamada que foi registrado com um CancellationToken. |
|
Sinaliza que um CancellationToken deve ser cancelado. |
|
Representa um primitivo de sincronização que é sinalizado quando sua contagem atinge zero. |
|
Indica se um EventWaitHandle é redefinido de forma automática ou manual após recebimento de um sinal. |
|
Representa um evento de sincronização de thread. |
|
Fornece operações atômicas para variáveis que são compartilhadas por vários threads. |
|
Fornece rotinas de inicialização lentas. |
|
Especifica como uma instância Lazy<T> sincroniza o acesso entre vários threads. |
|
A exceção que é lançada quando a entrada recursiva em um bloqueio não é compatível com a política de recursão para o bloqueio. |
|
Especifica se um bloqueio pode ser inserido várias vezes pelo mesmo thread. |
|
Notifica um ou mais threads de espera em que um evento ocorreu. Essa classe não pode ser herdada. |
|
Fornece uma versão mais simplificada do ManualResetEvent. |
|
Fornece um mecanismo que sincroniza o acesso a objetos. |
|
Um primitivo de sincronização que também pode ser usado para sincronização entre processos. |
|
Representa um bloqueio que é usado para gerenciar o acesso a um recurso, permitindo vários threads para leitura ou acesso exclusivo para gravação. |
|
Limita o número de threads que podem acessar um recurso ou um pool de recursos simultaneamente. |
|
A exceção que é lançada quando o método Release é chamado em um semáforo cuja contagem já está no máximo. |
|
Uma alternativa superficial para Semaphore que limita o número de threads que podem acessar um recurso ou um pool de recursos simultaneamente. |
|
Representa um método a ser chamado quando uma mensagem deve ser distribuída em um contexto de sincronização. |
|
Fornece um primitivo de bloqueio de exclusão mútua onde um thread que tenta adquirir o bloqueio aguarda em um loop, fazendo verificações repetidamente até que o bloqueio esteja disponível. |
|
Fornece suporte à espera baseada em rotação. |
|
Fornece a funcionalidade básica para propagação de um contexto de sincronização em vários modelos de sincronização. |
|
A exceção que é lançada quando um método exige que o chamador possua o bloqueio em um determinado Monitor, e o método é invocado por um chamador que não possui o bloqueio. |
|
Fornece armazenamento de dados local de thread. |
|
Contém constantes que especificam intervalos de tempo limite infinitos. Essa classe não pode ser herdada. |
|
Contém métodos para executar operações de memória voláteis. |
|
Encapsula objetos específicos do sistema operacional que aguardam acesso exclusivo aos recursos compartilhados. |
|
A exceção que é lançada quando é feita uma tentativa de abrir um semáforo ou mutex do sistema que não existe. |
Namespace System.Threading.Tasks
Tipos com suporte no .NET para aplicativos da Windows Store |
Descrição |
---|---|
Fornece agendadores de tarefa simultâneos e exclusivos que se coordenam para executar tarefas, ao mesmo tempo que garantem que as tarefas simultâneas possam ser executadas simultaneamente e as tarefas exclusivas nunca. |
|
Fornece suporte para regiões e loops paralelos. |
|
Fornece o status de conclusão da execução de um loop paralelo. |
|
Permite iterações de loops paralelos para interação com outras iterações. Uma instância dessa classe é fornecida pela classe Parallel a cada loop; você não pode criar instâncias no código do usuário. |
|
Armazena opções que configuram a operação dos métodos na classe Parallel. |
|
Representa uma operação assíncrona. |
|
Representa uma operação assíncrona que pode retornar um valor. |
|
Representa uma exceção usada para comunicar o cancelamento da tarefa. |
|
Representa o lado produtor de um Task<TResult> não associado a um delegado, fornecendo acesso ao lado do consumidor por meio da propriedade TaskCompletionSource<T>.Task. |
|
Especifica o comportamento de uma tarefa que é criada com o método ContinueWith ou Task<T>.ContinueWith. |
|
Especifica os sinalizadores que controlam o comportamento opcional para a criação e a execução de tarefas. |
|
Fornece um conjunto de métodos estáticos (compartilhado no Visual Basic) para trabalhar com tipos específicos de instâncias Task. |
|
Fornece suporte para criação e agendamento de objetos Task. |
|
Fornece suporte para criação e agendamento de objetos Task<T>. |
|
Representa um objeto que manipula o trabalho de nível baixo de enfileirar tarefas em threads. |
|
Representa uma exceção usada para comunicar uma operação inválida por um TaskScheduler. |
|
Representa o estágio atual no ciclo de vida de uma tarefa. |
|
Fornece dados para o evento que é gerado quando a exceção de uma tarefa com falha não é observada. |
Namespace System.Threading.Tasks.DataFlow
Para instalar o namespace System.Threading.Tasks.Dataflow, abra seu projeto em Visual Studio 2012, escolha Gerenciar Pacotes NuGet no menu Projeto e procure na Internet pelo pacote Microsoft.Tpl.Dataflow.
Tipos com suporte no .NET para aplicativos da Windows Store |
Descrição |
---|---|
Fornece um bloco de fluxo de dados que invoca um representante Action<T> fornecido para cada elemento de dados recebido. |
|
Fornece um bloco de fluxo de dados que processa em lotes entradas em matrizes. |
|
Fornece um bloco de fluxo de dados que processa em lotes um número especificado de entradas de possíveis tipos diferentes fornecidos a um ou mais de seus destinos. |
|
Fornece um bloco de fluxo de dados que processa em lotes um número especificado de entradas de possíveis tipos diferentes fornecidos a um ou mais de seus destinos. |
|
Fornece um buffer para armazenar no máximo um elemento de cada vez, substituindo cada mensagem pela seguinte à medida que elas chegam. As mensagens são transmitidas para todos os destinos vinculados, que podem consumir um clone da mensagem. |
|
Fornece um buffer para armazenamento de dados. |
|
Fornece um conjunto de métodos estáticos (compartilhado no Visual Basic) para trabalhar com blocos de fluxo de dados. |
|
Fornece as opções usadas para configurar o processamento executado por blocos de fluxo de dados. |
|
Fornece as opções usadas para configurar um link entre blocos de fluxo de dados. |
|
Fornece um contêiner de atributos de dados para passagem entre blocos de fluxo de dados. |
|
Representa o status de um DataflowMessageHeader quando transmitido entre blocos de fluxo de dados. |
|
Fornece as opções usadas para configurar o processamento executado pelos blocos de fluxo de dados que processam cada mensagem por meio da invocação de um representante fornecido por um usuário. Esses são blocos de fluxo de dados, como ActionBlock<TInput> e TransformBlock<TInput, TOutput>. |
|
Fornece as opções usadas para configurar o processamento executado pelos blocos de fluxo de dados que agrupam várias mensagens. Esses são blocos de fluxo de dados, como JoinBlock<T1, T2> e BatchBlock<T>. |
|
Representa um bloco de fluxo de dados. |
|
Representa um bloco de fluxo de dados que é um destino para dados e uma origem de dados. |
|
Representa um bloco de fluxo de dados que oferece suporte ao recebimento de mensagens sem vínculo. |
|
Representa um bloco de fluxo de dados que é uma origem de dados. |
|
Representa um bloco de fluxo de dados que é um destino para os dados. |
|
Fornece um bloco de fluxo de dados que ingressa em várias origens de fluxo de dados, que não são necessariamente do mesmo tipo, aguardando um item chegar para cada tipo antes que sejam todos liberados juntos como uma tupla que contém um item por tipo. |
|
Fornece um bloco de fluxo de dados que ingressa em várias origens de fluxo de dados, que não são necessariamente do mesmo tipo, aguardando um item chegar para cada tipo antes que sejam todos liberados juntos como uma tupla que contém um item por tipo. |
|
Fornece um bloco de fluxo de dados que invoca um representante Func<T, TResult> fornecido para cada elemento de dados recebido. |
|
Fornece um bloco de fluxo de dados que invoca um representante Func<T, TResult> fornecido para cada elemento de dados recebido. |
|
Fornece um buffer para recebimento e armazenamento de, no máximo, um elemento em uma rede de blocos de fluxo de dados. |