Função timeBeginPeriod (timeapi.h)

A função timeBeginPeriod solicita uma resolução mínima para temporizadores periódicos.

Sintaxe

MMRESULT timeBeginPeriod(
  UINT uPeriod
);

Parâmetros

uPeriod

Resolução mínima do temporizador, em milissegundos, para o driver de aplicativo ou dispositivo. Um valor mais baixo especifica uma resolução mais alta (mais precisa).

Valor retornado

Retorna TIMERR_NOERROR se tiver êxito ou TIMERR_NOCANDO se a resolução especificada em uPeriod estiver fora do intervalo.

Comentários

Chame essa função imediatamente antes de usar os serviços de temporizador e chame a função timeEndPeriod imediatamente após terminar de usar os serviços de temporizador.

Você deve corresponder cada chamada a timeBeginPeriod com uma chamada para timeEndPeriod, especificando a mesma resolução mínima em ambas as chamadas. Um aplicativo pode fazer várias chamadas timeBeginPeriod , desde que cada chamada seja correspondida com uma chamada para timeEndPeriod.

Antes do Windows 10, versão 2004, essa função afeta uma configuração global do Windows. Para todos os processos, o Windows usa o valor mais baixo (ou seja, a resolução mais alta) solicitado por qualquer processo. A partir do Windows 10, versão 2004, essa função não afeta mais a resolução do temporizador global. Para processos que chamam essa função, o Windows usa o valor mais baixo (ou seja, a resolução mais alta) solicitado por qualquer processo. Para processos que não chamaram essa função, o Windows não garante uma resolução maior do que a resolução do sistema padrão.

Começando com Windows 11, se um processo de propriedade de janela se tornar totalmente ocluído, minimizado ou invisível ou inaudível para o usuário final, o Windows não garantirá uma resolução maior do que a resolução do sistema padrão. Consulte SetProcessInformation para obter mais informações sobre esse comportamento.

Definir uma resolução mais alta pode melhorar a precisão de intervalos de tempo limite em funções de espera. No entanto, ele também pode reduzir o desempenho geral do sistema, pois o agendador de threads alterna tarefas com mais frequência. As altas resoluções também podem impedir que o sistema de gerenciamento de energia da CPU entre em modos de economia de energia. Definir uma resolução mais alta não melhora a precisão do contador de desempenho de alta resolução.

Requisitos

   
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho timeapi.h (inclua Windows.h)
Biblioteca Winmm.lib
DLL Winmm.dll

Confira também

Funções de temporizador multimídia

Temporizadores multimídia