Функция timeBeginPeriod (timeapi.h)
Функция timeBeginPeriod запрашивает минимальное разрешение для периодических таймеров.
Синтаксис
MMRESULT timeBeginPeriod(
UINT uPeriod
);
Параметры
uPeriod
Минимальное разрешение таймера в миллисекундах для приложения или драйвера устройства. Меньшее значение указывает более высокое (более точное) разрешение.
Возвращаемое значение
Возвращает TIMERR_NOERROR в случае успешного выполнения или TIMERR_NOCANDO , если разрешение, указанное в uPeriod , выходит за пределы диапазона.
Комментарии
Вызовите эту функцию непосредственно перед использованием служб таймера и вызовите функцию timeEndPeriod сразу после завершения использования служб таймера.
Необходимо сопоставить каждый вызов timeBeginPeriod с вызовом timeEndPeriod, указав одинаковое минимальное разрешение в обоих вызовах. Приложение может выполнять несколько вызовов timeBeginPeriod , если каждый вызов сопоставляется с вызовом timeEndPeriod.
До Windows 10 версии 2004 эта функция влияет на глобальный параметр Windows. Для всех процессов Windows использует наименьшее значение (то есть максимальное разрешение), запрашиваемое любым процессом. Начиная с Windows 10 версии 2004, эта функция больше не влияет на глобальное разрешение таймера. Для процессов, вызывающих эту функцию, Windows использует наименьшее значение (то есть наибольшее разрешение), запрашиваемое любым процессом. Для процессов, которые не вызывали эту функцию, Windows не гарантирует более высокое разрешение, чем разрешение системы по умолчанию.
Начиная с Windows 11, если процесс владения окном становится полностью occluded, свернут или иным образом невидимым или неразборчивым для конечного пользователя, Windows не гарантирует более высокое разрешение, чем разрешение системы по умолчанию. Дополнительные сведения об этом поведении см. в разделе SetProcessInformation .
Установка более высокого разрешения может повысить точность интервалов времени ожидания в функциях ожидания. Однако это также может снизить общую производительность системы, так как планировщик потоков чаще переключает задачи. Высокие разрешения также могут препятствовать переходу системы управления питанием ЦП в режимы энергосбережения. Установка более высокого разрешения не повышает точность счетчика производительности с высоким разрешением.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | timeapi.h (включая Windows.h) |
Библиотека | Winmm.lib |
DLL | Winmm.dll |