Compartir a través de


Función GetTickCount (sysinfoapi.h)

Recupera el número de milisegundos que han transcurrido desde que se inició el sistema, hasta 49,7 días.

Sintaxis

DWORD GetTickCount();

Valor devuelto

El valor devuelto es el número de milisegundos que han transcurrido desde que se inició el sistema.

Observaciones

La resolución de la función GetTickCount de se limita a la resolución del temporizador del sistema, que normalmente está en el intervalo de 10 milisegundos a 16 milisegundos. La resolución de la función GetTickCount no se ve afectada por los ajustes realizados por la función GetSystemTimeAdjustment.

El tiempo transcurrido se almacena como un valor DWORD. Por lo tanto, el tiempo se ajustará a cero si el sistema se ejecuta continuamente durante 49,7 días. Para evitar este problema, use la función GetTickCount64. De lo contrario, compruebe si hay una condición de desbordamiento al comparar los tiempos.

Si necesita un temporizador de resolución superior, use un temporizador multimedia o un temporizador de alta resolución .

Para obtener el tiempo transcurrido desde que se inició el equipo, recupere el contador Tiempo de funcionamiento del sistema en los datos de rendimiento de la clave del Registro HKEY_PERFORMANCE_DATA. El valor devuelto es un valor de 8 bytes. Para obtener más información, vea Contadores de rendimiento.

Para obtener el tiempo que el sistema ha invertido en el estado de trabajo desde que se inició, use la función QueryUnbiasedInterruptTime.

Nota las compilaciones de Windows QueryUnbiasedInterruptTime generan resultados diferentes en las compilaciones de depuración ("checked") de Windows, ya que el recuento de tiempo de interrupción y el recuento de tics están avanzados en aproximadamente 49 días. Esto ayuda a identificar errores que podrían no producirse hasta que el sistema se haya estado ejecutando durante mucho tiempo.
 

Ejemplos

// calculate a 't' value that will linearly interpolate from 0 to 1 and back every 20 seconds
DWORD currentTime = GetTickCount();
if ( m_startTime == 0 )
{
    m_startTime = currentTime;
}
float t = 2 * (( currentTime - m_startTime) % 20000) / 20000.0f;
if (t > 1.0f)
{
    t = 2 - t;
}

Requisitos

Requisito Valor
cliente mínimo admitido Windows 2000 Professional [aplicaciones de escritorio | Aplicaciones para UWP]
servidor mínimo admitido Windows 2000 Server [aplicaciones de escritorio | Aplicaciones para UWP]
de la plataforma de destino de Windows
encabezado de sysinfoapi.h (incluya Windows.h)
biblioteca de Kernel32.lib
DLL de Kernel32.dll

Consulte también

funciones de tiempo de

de hora de Windows