MSDN (http://msdn.microsoft.com/en-us/library/aa332339(VS.71).aspx) говорит, что ждать «Освобождает блокировку объекта и блокирует текущий поток, пока он не восстановит блокировку». Это подразумевает, в основном, блокировку переключения (освобождение, давая другой поток возможность запуска, блокировка блокировки). Но разве это не Pulse()? Единственное небольшое отличие от Pulse - он постоянно сигнализирует о приобретении замка?Разница между Wait() и Pulse()
# потоковая руководство C (http://www.albahari.com/threading/part4.aspx#_Wait_and_Pulse) имеет очень хорошую аналогию:
«Думай о нем, как автоматическая парковка: вы в очереди первым на получки станции, чтобы подтвердить свой билет (очереди ожидания),»
Итак, с описанием MSDN это означает, что при отпускании блокировки и блокировки (так же, как переключение ожидания), один автомобиль проходит, а затем барьер (замок) падает вниз?
http://www.albahari.com/threading/part4.aspx#_Wait_and_Pulse стоит прочитать тоже –