Поделиться через


Функция GetTickCount (sysinfoapi.h)

Извлекает количество миллисекундах, прошедших с момента запуска системы, до 49,7 дней.

Синтаксис

DWORD GetTickCount();

Возвращаемое значение

Возвращаемое значение — это количество миллисекундах, прошедших с момента запуска системы.

Замечания

Разрешение функции GetTickCount ограничено разрешением системного таймера, которое обычно находится в диапазоне от 10 миллисекунда до 16 миллисекундах. Разрешение функции getTickCount не влияет на изменения, внесенные функцией GetSystemTimeAdjustment.

Истекшее время хранится в виде значения DWORD. Таким образом, время будет обтекать до нуля, если система выполняется непрерывно в течение 49,7 дней. Чтобы избежать этой проблемы, используйте функцию GetTickCount64. В противном случае проверьте состояние переполнения при сравнении времени.

Если вам нужен более высокий таймер разрешения, используйте мультимедиа таймер или таймер высокого разрешения.

Чтобы получить время, истекшее с момента запуска компьютера, получите счетчик времени запуска системы в данных о производительности в разделе реестра HKEY_PERFORMANCE_DATA. Возвращаемое значение — 8-байтовое значение. Дополнительные сведения см. в счетчиках производительности.

Чтобы получить время, затраченное системой в рабочем состоянии с момента ее запуска, используйте функцию QueryUnbiasedInterruptTime.

Примечание Функция QueryUnbiasedInterruptTime создает различные результаты при отладке ("проверено") сборках Windows, так как количество прерываний и число галок расширены примерно на 49 дней. Это помогает выявить ошибки, которые могут не возникать до тех пор, пока система не будет работать в течение длительного времени.
 

Примеры

// calculate a 't' value that will linearly interpolate from 0 to 1 and back every 20 seconds
DWORD currentTime = GetTickCount();
if ( m_startTime == 0 )
{
    m_startTime = currentTime;
}
float t = 2 * (( currentTime - m_startTime) % 20000) / 20000.0f;
if (t > 1.0f)
{
    t = 2 - t;
}

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 2000 Профессиональный [классические приложения | Приложения UWP]
минимальный поддерживаемый сервер Windows 2000 Server [классические приложения | Приложения UWP]
целевая платформа Виндоус
заголовка sysinfoapi.h (включая Windows.h)
библиотеки Kernel32.lib
DLL Kernel32.dll

См. также

функции времени

времени Windows