Функция GetTickCount (sysinfoapi.h)
Извлекает количество миллисекундах, прошедших с момента запуска системы, до 49,7 дней.
Синтаксис
DWORD GetTickCount();
Возвращаемое значение
Возвращаемое значение — это количество миллисекундах, прошедших с момента запуска системы.
Замечания
Разрешение функции GetTickCount ограничено разрешением системного таймера, которое обычно находится в диапазоне от 10 миллисекунда до 16 миллисекундах. Разрешение функции getTickCount
Истекшее время хранится в виде значения DWORD. Таким образом, время будет обтекать до нуля, если система выполняется непрерывно в течение 49,7 дней. Чтобы избежать этой проблемы, используйте функцию GetTickCount64. В противном случае проверьте состояние переполнения при сравнении времени.
Если вам нужен более высокий таймер разрешения, используйте мультимедиа таймер
Чтобы получить время, истекшее с момента запуска компьютера, получите счетчик времени запуска системы в данных о производительности в разделе реестра HKEY_PERFORMANCE_DATA. Возвращаемое значение — 8-байтовое значение. Дополнительные сведения см. в счетчиках производительности.
Чтобы получить время, затраченное системой в рабочем состоянии с момента ее запуска, используйте функцию QueryUnbiasedInterruptTime.
Примеры
// 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 |