Поделиться через


EventWaitHandle, AutoResetEvent и ManualResetEvent

Обновлен: Ноябрь 2007

Дескрипторы ожидания событий позволяют потокам синхронизировать действия, обмениваясь сигналами и ожидая сигналов друг от друга. Такие события синхронизации основаны на дескрипторах ожидания Win32. Их можно разделить на два типа: события, сбрасываемые автоматически в момент передачи сигнала и сбрасываемые вручную.

Дескрипторы ожидания событий полезны во многих из сценариев синхронизации, где используется класс Monitor. Использовать дескрипторы ожидания событий часто проще, чем методы Monitor.Wait и Monitor.Pulse, и они дают более широкие возможности управления сигналами. Именованные дескрипторы ожидания событий также можно использовать для синхронизации действий между различными доменами приложений и процессами, в то время как мониторы являются локальными для домена приложения.

В этом подразделе

  • EventWaitHandle
    Класс EventWaitHandle может представлять локальные или именованные системные события с автоматическим или ручным сбросом.

  • AutoResetEvent
    Класс AutoResetEvent является производным от класса EventWaitHandle и представляет локальное событие с автоматическим сбросом.

  • ManualResetEvent
    Класс ManualResetEvent является производным от класса EventWaitHandle и представляет локальное событие, которое необходимо сбрасывать вручную.

Связанные подразделы

См. также

Ссылки

EventWaitHandle

WaitHandle

AutoResetEvent

ManualResetEvent

Другие ресурсы

Объекты и функциональные возможности работы с потоками

Основы управляемых потоков