Разница между KeWaitForSingleObject с 0 тайм-аутом и KeReadStateSemaphore - PullRequest
1 голос
/ 14 июня 2011

Есть ли разница между KeWaitForSingleObject с таймаутом, установленным на 0, и KeReadStateSemaphore?

1 Ответ

3 голосов
/ 14 июня 2011

Есть очень большая разница.В то время как KeReadStateSemaphore просто возвращает состояние семафора, KeWaitForSingleObject с таймаутом 0 фактически будет обрабатывать побочные эффекты, если ожидание будет удовлетворено (то есть побочным эффектом является уменьшение состояния сигнала).Используйте первый, чтобы опросить, и используйте второй, чтобы попытаться получить семафор без ожидания.

...