Функция GetTickCount (sysinfoapi.h)
Извлекает количество миллисекундах, прошедших с момента запуска системы, до 49,7 дней.
Синтаксис
DWORD GetTickCount();
Возвращаемое значение
Возвращаемое значение — это количество миллисекундах, прошедших с момента запуска системы.
Комментарии
Разрешение функции GetTickCount ограничено разрешением системного таймера, которое обычно находится в диапазоне от 10 до 16 миллисекундах. На разрешение функции GetTickCount не влияют корректировки, внесенные функцией GetSystemTimeAdjustment .
Затраченное время сохраняется в виде значения DWORD . Таким образом, время будет равно нулю, если система непрерывно работает в течение 49,7 дней. Чтобы избежать этой проблемы, используйте функцию GetTickCount64 . В противном случае проверка для условия переполнения при сравнении времени.
Если вам нужен таймер с более высоким разрешением, используйте таймер мультимедиа или таймер с высоким разрешением.
Чтобы получить время, прошедшее с момента запуска компьютера, получите счетчик Время работы системы в данных о производительности в разделе реестра HKEY_PERFORMANCE_DATA. Возвращаемое значение представляет собой 8-байтовое значение. Дополнительные сведения см. в статье Performance Counters.
Чтобы получить время, затраченное системой в рабочем состоянии с момента запуска, используйте функцию 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] |
Целевая платформа | Windows |
Header | sysinfoapi.h (включая Windows.h) |
Библиотека | Kernel32.lib |
DLL | Kernel32.dll |
См. также
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по