¿Cuál es el uso de tim.tv_sec
y tim.tv_nsec
en lo siguiente?Cómo usar nanosleep() en C? ¿Qué son `tim.tv_sec` y` tim.tv_nsec`?
¿Cómo puedo suspender la ejecución de 500000
microsegundos?
#include <stdio.h>
#include <time.h>
int main()
{
struct timespec tim, tim2;
tim.tv_sec = 1;
tim.tv_nsec = 500;
if(nanosleep(&tim , &tim2) < 0)
{
printf("Nano sleep system call failed \n");
return -1;
}
printf("Nano sleep successfull \n");
return 0;
}
genial. Solo una pregunta mas. Estoy probando esto usando gettimeofday() dos veces y obteniendo la diferencia. Por lo tanto, obtuve una diferencia de medio segundo. Pero también hubo una fracción muy pequeña de un segundo, debido al tiempo de procesamiento de la CPU. ¿Cómo puedo calcular esto y restarlo del tiempo de mi sueño? mi tiempo fue como: 0.501033 seg – pnizzle
@pnizzle: ¿Qué es exactamente lo que espera lograr con esa resta? – NPE
espero alcanzar exactamente 0.500000secs. Gracias – pnizzle