Compartilhar via


ManualResetEvent e ManualResetEventSlim

O System.Threading.ManualResetEvent classe representa um evento de identificador de espera local deve ser redefinido manualmente depois que ele é sinalizado. Esta classe representa um caso especial de sua classe base, System.Threading.EventWaitHandle. Consulte o EventWaitHandle redefine a documentação conceitual para o uso e os recursos do manual de eventos.

A ManualResetEvent objeto permanece signaled até sua EventWaitHandle.Reset método é chamado. Qualquer número de espera de segmentos ou segmentos que esperar o evento depois que tiver sido assinalada, pode ser liberado enquanto o estado do objeto é sinalizado. ManualResetEventcorresponde a um Win32 CreateEvent de chamada, especificando true para o bManualReset argumento.

No .NET Framework versão 4, você pode usar o System.Threading.ManualResetEventSlim de classe para melhor desempenho quando os tempos de espera devem ser muito curto, e quando o evento não cruzar um limite de processo. ManualResetEventSlim usa girando ocupado por um curto período, enquanto aguarda o evento ficar sinalizado. Quando os tempos de espera sejam curtos, girando pode ser muito mais barato do que espera usando identificadores de espera. No entanto, se o evento não fique sinalizado dentro de um determinado período de tempo, ManualResetEventSlim resorts espera de manipular um evento regular.

Consulte também

Conceitos

Identificadores de Espera

AutoResetEvent

Semáforo e SemaphoreSlim

Outros recursos

Threads gerenciadas

Threading objetos e recursos

SpinWait