Я читал в .NET Threading и работал над некоторым кодом, который использует ManualResetEvent. Я нашел множество образцов кода в Интернете. Однако при чтении документации для WaitHandle я увидел следующее:
WaitHandle реализует Dispose шаблон. См. Реализация Завершение и Утилизация для очистки неуправляемых Ресурсы.
Ни один из образцов, по-видимому, не вызывает .Close() для создаваемых ими объектов ManualResetEvent, даже приятную рекурсию и Concurrency статью блог pfxteam (Изменить) - у меня есть пробельный блок, который я пропустил). Это просто пример надзора или не нужен? Мне любопытно, потому что WaitHandle "инкапсулирует объекты, специфичные для операционной системы", поэтому может быть легко утечка ресурсов.