¿Cómo hacer que el tiempo de espera de la función sleep() en lenguaje C sea inferior a 1 segundo?
LARGE _ INTEGER litmp
Longlong QPart1, QPart2
doble dfMinus, dfFreq, dfTim
QueryPerformanceFrequency(amp;litmp);
dfFreq = (doble)litmp. QuadPart//Obtener la frecuencia de reloj del contador
QueryPerformanceCounter(amp; litmp);
QPart1 = litmp. QuadPart//Obtener valor inicial
Hacer
{
QueryPerformanceCounter(amp; litmp);
QPart2 = litmp. QuadPart //Obtiene el valor de parada
df MINUS =(double)(q part 2-q part 1);
df Tim = df MINUS/dff req; Valor de tiempo correspondiente en segundos.
} while(df Tim lt; 0.001);
El error de tiempo es inferior a 1 microsegundo y la precisión está relacionada con la configuración de la CPU y otras máquinas.
×××××××××, por lo que esperar 1 segundo es dormir (1000). Si el retraso es inferior a un segundo, haga que el parámetro pasado sea inferior a 1000.
Por ejemplo, espere 0,1 segundos:
Dormir(100);