System.Threading Espaço de Nomes
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 classes e interfaces que permitem programação multithread. Para além das classes para sincronizar atividades de threads e acesso a dados (, , , AutoResetEvent, e assim sucessivamente), este namespace inclui uma ThreadPool classe que permite usar um pool de threads fornecidos pelo sistema, e uma Timer classe que executa métodos de callback em threads Interlockedpool. MonitorMutex
Classes
| Name | Description |
|---|---|
| AbandonedMutexException |
A exceção que é lançada quando um thread adquire um Mutex objeto que outro thread abandonou ao sair sem o libertar. |
| AsyncLocal<T> |
Representa dados ambientes que são locais para um dado fluxo de controlo assíncrono, como um método assíncrono. |
| AutoResetEvent |
Representa um evento de sincronização de threads que, quando sinalizado, liberta uma única thread em espera e depois reinicia automaticamente. Esta classe não pode ser herdada. |
| Barrier |
Permite que múltiplas tarefas trabalhem cooperativamente num algoritmo em paralelo ao longo de várias fases. |
| BarrierPostPhaseException |
A exceção que é lançada quando a ação pós-fase de um Barrier falha. |
| CancellationTokenSource |
Sinaliza CancellationToken que deve ser cancelado. |
| CompressedStack |
Fornece métodos para definir e capturar a pilha comprimida no thread atual. Esta classe não pode ser herdada. |
| CountdownEvent |
Representa uma primitiva de sincronização que é sinalizada quando a sua contagem atinge zero. |
| EventWaitHandle |
Representa um evento de sincronização de threads. |
| ExecutionContext |
Gere o contexto de execução do thread atual. Esta classe não pode ser herdada. |
| HostExecutionContext |
Encapsula e propaga o contexto de execução do host entre threads. |
| HostExecutionContextManager |
Fornece a funcionalidade que permite a um host de runtime de linguagem comum participar no fluxo, ou migração, do contexto de execução. |
| Interlocked |
Fornece operações atómicas para variáveis que são partilhadas por múltiplos threads. |
| LazyInitializer |
Fornece rotinas de inicialização preguiçosas. |
| LockRecursionException |
A exceção que é lançada quando a entrada recursiva num bloqueio não é compatível com a política de recursão para o bloqueio. |
| ManualResetEvent |
Representa um evento de sincronização de threads que, quando sinalizado, deve ser reiniciado manualmente. Esta classe não pode ser herdada. |
| ManualResetEventSlim |
Representa um evento de sincronização de threads que, quando sinalizado, deve ser reiniciado manualmente. Esta classe é uma alternativa leve a ManualResetEvent. |
| Monitor |
Fornece um mecanismo que sincroniza o acesso a objetos. |
| Mutex |
Uma primitiva de sincronização que também pode ser usada para sincronização entre processos. |
| Overlapped |
Fornece uma representação gerida de uma estrutura Win32 |
| PreAllocatedOverlapped |
Representa o estado pré-alocado para operações nativas de E/S sobrepostas. |
| ReaderWriterLock |
Define um bloqueio que suporta escritores individuais e múltiplos leitores. |
| ReaderWriterLockSlim |
Representa um bloqueio usado para gerir o acesso a um recurso, permitindo múltiplos threads para leitura ou acesso exclusivo para escrita. |
| RegisteredWaitHandle |
Representa um handle que foi registado ao chamar RegisterWaitForSingleObject(WaitHandle, WaitOrTimerCallback, Object, UInt32, Boolean). Esta classe não pode ser herdada. |
| Semaphore |
Limita o número de threads que podem aceder simultaneamente a um recurso ou conjunto de recursos. |
| SemaphoreFullException |
A exceção é lançada quando o Release método é chamado a um semáforo cuja contagem já está no máximo. |
| SemaphoreSlim |
Representa uma alternativa leve que Semaphore limita o número de threads que podem aceder a um recurso ou conjunto de recursos em simultâneo. |
| SynchronizationContext |
Fornece a funcionalidade básica para propagar um contexto de sincronização em vários modelos de sincronização. |
| SynchronizationLockException |
A exceção que é lançada quando um método exige que o chamador possua o bloqueio num dado Monitor, e o método é invocado por um chamador que não possui esse bloqueio. |
| Thread |
Cria e controla uma thread, define a sua prioridade e obtém o seu estado. |
| ThreadAbortException |
A exceção que é lançada quando é feita uma chamada ao Abort(Object) método. Esta classe não pode ser herdada. |
| ThreadExceptionEventArgs |
Fornece dados para o ThreadException evento. |
| ThreadInterruptedException |
A exceção que é lançada quando a Thread é interrompido enquanto está em estado de espera. |
| ThreadLocal<T> |
Fornece armazenamento local de dados em threads. |
| ThreadPool |
Fornece um conjunto de threads que podem ser usados para executar tarefas, publicar itens de trabalho, processar I/O assíncronos, esperar em nome de outros threads e processar temporizadores. |
| ThreadPoolBoundHandle |
Representa um handle de I/O que está ligado ao pool de threads do sistema e permite que componentes de baixo nível recebam notificações para operações de I/O assíncronas. |
| ThreadStartException |
A exceção que é lançada quando ocorre uma falha numa thread gerida após a thread do sistema operativo subjacente ter sido iniciada, mas antes de a thread estar pronta para executar código de utilizador. |
| ThreadStateException |
A exceção que é lançada quando a Thread está num inválido ThreadState para a chamada ao método. |
| Timeout |
Contém constantes que especificam intervalos infinitos de time-out. Esta classe não pode ser herdada. |
| Timer |
Fornece um mecanismo para executar um método numa thread pool de threads em intervalos especificados. Esta classe não pode ser herdada. |
| Volatile |
Contém métodos para realizar operações de memória volátil. |
| WaitHandle |
Encapsula objetos específicos do sistema operativo que aguardam acesso exclusivo a recursos partilhados. |
| WaitHandleCannotBeOpenedException |
A exceção que é lançada quando se tenta abrir um mutex, semáforo ou event wait handle do sistema que não existe. |
| WaitHandleExtensions |
Oferece métodos práticos para trabalhar com uma alavanca segura para uma maçaneta de espera. |
Estruturas
| Name | Description |
|---|---|
| AsyncFlowControl |
Fornece a funcionalidade para restaurar a migração, ou fluxo, do contexto de execução entre threads. |
| AsyncLocalValueChangedArgs<T> |
A classe que fornece informação de alteração de dados a AsyncLocal<T> instâncias que se registam para notificações de alteração. |
| CancellationToken |
Propaga a notificação de que as operações devem ser canceladas. |
| CancellationTokenRegistration |
Representa um delegado de callback que foi registado com um CancellationToken. |
| LockCookie |
Define o bloqueio que implementa semântica de um único escritor/múltiplo leitor. Isto é um tipo de valor. |
| NativeOverlapped |
Fornece um layout explícito que é visível a partir de código não gerido e que terá o mesmo layout da estrutura Win32 SOBREPOSTA, com campos reservados adicionais no final. |
| SpinLock |
Fornece uma primitiva de bloqueio de exclusão mútua onde um thread que tenta adquirir o bloqueio espera num ciclo verificando repetidamente até que o bloqueio fique disponível. |
| SpinWait |
Oferece suporte para espera baseada em rotação. |
Enumerações
| Name | Description |
|---|---|
| ApartmentState |
Especifica o estado do apartamento de um Thread. |
| EventResetMode |
Indica se um EventWaitHandle é reiniciado automaticamente ou manualmente após receber um sinal. |
| LazyThreadSafetyMode |
Especifica como uma Lazy<T> instância sincroniza o acesso entre múltiplos threads. |
| LockRecursionPolicy |
Especifica se um bloqueio pode ser introduzido várias vezes pelo mesmo thread. |
| ThreadPriority |
Especifica a prioridade de agendamento de um Thread. |
| ThreadState |
Especifica os estados de execução de um Thread. |
Delegados
| Name | Description |
|---|---|
| ContextCallback |
Representa um método a ser chamado dentro de um novo contexto. |
| IOCompletionCallback |
Recebe o código de erro, o número de bytes e o tipo de valor sobreposto quando uma operação de I/O é concluída no pool de threads. |
| ParameterizedThreadStart |
Representa o método que executa sobre um Thread. |
| SendOrPostCallback |
Representa um método a ser chamado quando uma mensagem vai ser enviada para um contexto de sincronização. |
| ThreadExceptionEventHandler |
Representa o método que irá tratar o ThreadException evento de um Application. |
| ThreadStart |
Representa o método que executa sobre um Thread. |
| TimerCallback |
Representa o método que lida com chamadas de um Timer. |
| WaitCallback |
Representa um método de callback a ser executado por um thread pool de threads. |
| WaitOrTimerCallback |
Representa um método a ser chamado quando a WaitHandle é sinalizado ou expira o tempo. |