Прошло время до возвращения WaitForSingleObject

Есть ли способ узнать, сколько времени прошло с момента, когда я вызывал функцию WaitForSingleObject, пока она не вернулась?

или что единственный способ узнать это с помощью какого-то таймера?

3 ответа

Решение

Просто сохраните текущее время перед звонком WaitForSingleObject(), Тогда сравните со временем, когда оно вернется.

Из http://msdn.microsoft.com/en-us/library/windows/desktop/ms725473(v=vs.85).aspx - выберите функцию для получения времени.

Вам нужно будет использовать таймер, если вам нужно отслеживать это. Другой вариант (хотя вы не получите точное время, таймер был бы лучше), чтобы позвонить WaitForSingleObject с небольшим значением времени ожидания. Вы можете проверить код возврата, чтобы увидеть, если это WAIT_TIMEOUT, Если это так, то увеличьте отсчет времени на значение времени ожидания.

GetTickCount() до и после вызова. Не упустите DWORD.

Другие вопросы по тегам