Operações de evento do temporizador

[O recurso associado a esta página, temporizadores multimídia, é um recurso herdado. Ele foi substituído por de Serviço de Agendador de Classe Multimídia. do Serviço de Agendador de Classes Multimídia foi otimizado para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use serviço de agendador de classe multimídia em vez de temporizadores multimídia, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]

Depois de estabelecer a resolução do temporizador do aplicativo, você poderá iniciar eventos de temporizador usando a função timeSetEvent. Essa função retorna um identificador de temporizador que pode ser usado para interromper ou identificar eventos de temporizador. Um dos parâmetros da função é o endereço de uma função de retorno de chamada TimeProc que é chamada quando o evento do temporizador ocorre.

Há dois tipos de eventos de temporizador: única e periódica. Um único evento de temporizador ocorre uma vez, após um número especificado de milissegundos. Um evento de temporizador periódico ocorre sempre que um número especificado de milissegundos é decorrido. O intervalo entre eventos periódicos é chamado de atraso de evento. Eventos de temporizador periódico com um atraso de evento de 10 milissegundos ou menos consomem uma parte significativa dos recursos da CPU.

A relação entre a resolução de um evento de temporizador e a duração do atraso do evento é importante em eventos de temporizador. Por exemplo, se você especificar uma resolução 5 e um atraso de evento de 100, os serviços de temporizador notificarão a função de retorno de chamada após um intervalo que varia de 95 a 105 milissegundos.

Você pode cancelar um evento de temporizador ativo a qualquer momento usando a função timeKillEvent. Cancele todos os temporizadores pendentes antes de liberar a memória que contém a função de retorno de chamada.

Nota

O temporizador multimídia é executado em seu próprio thread.