Recentemente, decidi que precisava mudar de milissegundos para microssegundos para minha classe Timer e, depois de alguma pesquisa, decidi que QueryPerformanceCounter é provavelmente minha aposta mais segura. (O aviso de Boost::Posix
que pode não funcionar na API do Win32 me desanima). No entanto, não tenho certeza de como implementá-lo.
O que estou fazendo é chamar qualquer GetTicks()
função esque que estou usando e atribuí-la à startingTicks
variável do temporizador . Em seguida, para descobrir a quantidade de tempo que passou, apenas subtraio o valor de retorno da função de startingTicks
, e quando eu zero o cronômetro, chamo a função novamente e atribuo a ela os marcadores de início. Infelizmente, pelo código que vi, não é tão simples quanto chamar QueryPerformanceCounter()
e não tenho certeza do que devo passar como argumento.