Recientemente decidí que necesitaba cambiar de milisegundos a microsegundos para mi clase de temporizador, y después de algunas investigaciones, decidí que QueryPerformanceCounter es probablemente mi apuesta más segura. (La advertencia de Boost::Posixque puede que no funcione en la API de Win32 me desanimó un poco). Sin embargo, no estoy muy seguro de cómo implementarlo.
Lo que estoy haciendo es llamar a cualquier GetTicks()función esque que esté usando y asignarla a la startingTicksvariable de Timer . Luego, para encontrar la cantidad de tiempo transcurrido, simplemente resto el valor de retorno de la función del startingTicks, y cuando restablezco el temporizador, simplemente llamo a la función nuevamente y le asigno initialTicks. Desafortunadamente, por el código que he visto, no es tan simple como llamar QueryPerformanceCounter(), y no estoy seguro de qué se supone que debo pasar como argumento.