Будет ли WaitForSingleObject вызывать переключение контекста при ожидании с нулевым временем ожидания?

Будет ли WaitForSingleObject (или WaitForMultipleObjects ) вызывать переключение контекста при ожидании события с нулевым временем ожидания? ( Sleep (0) немедленно выдаст временной интервал потоков, насколько мне известно.)

Теперь относительно WaitForSingle | MultipleObject и обработчиков событий. Если WaitFor * Object действительно нужно подождать, он, очевидно, выдаст оставшуюся часть своего временного среза. Однако есть два случая, когда API не нужно ждать:

  • Либо событие сигнализируется, и в этом случае оно может вернуться с WAIT_OBJECT_0
  • Или состоянием события не имеет значения, поскольку я указал нулевое время ожидания, и в этом случае он может немедленно вернуться либо с помощью WAIT_OBJECT_0 , либо WAIT_TIMEOUT

Теперь, учитывая это, WaitForSingleObject вызовет переключение контекста потока, если задано нулевое время ожидания?

8
задан Armen Tsirunyan 17 November 2010 в 10:23
поделиться