Red de conocimiento informático - Material del sitio web - ¿Cómo utilizar el lenguaje C en un entorno Linux para hacer que el bucle while se ejecute durante un tiempo fijo, como 200 milisegundos?

¿Cómo utilizar el lenguaje C en un entorno Linux para hacer que el bucle while se ejecute durante un tiempo fijo, como 200 milisegundos?

...

La persona de arriba quiere que su programa se convierta en una tragedia... Los parámetros de la función de suspensión en Linux están en segundos... Dormir durante 200 segundos. ...

Utiliza usleep cuando duermas menos de 1 segundo, en milisegundos. ...

Entonces, el programa anterior puede cambiar el sueño por el modo usleep. ...

mientras(1)

{

/*Cualquier cosa que quieras hacer*/

nosotros LEEP(200 ) ;

}

Además, creo que lo que quieres decir es: ¿Quieres que el bucle while realice algunas operaciones y salga del bucle while después de 200 milisegundos de tiempo de ejecución?

La forma más sencilla es utilizar un temporizador de intervalos. ...

Comprueba estas funciones: timer_create, timer_settime, etc.

La configuración de hora es más precisa. Puede configurar el intervalo de tiempo. Después del tiempo especificado, la señal SIGALRM se enviará al proceso actual. Las condiciones del bucle while se pueden modificar en la función de procesamiento de señales de SIGALRM para que el while pueda salir una vez transcurrido el tiempo. ....

Escribe esto:

// ...

...

...

Indicador de caracteres estáticos=1

...

int main(void)

{

señal(SIGALRM, temporizador _ handler);

/*

Solicite y establezca el intervalo del temporizador de intervalo.

*/

while (flag)

{

/*Operaciones dentro del bucle*/

}

...

Devuelve 0;

}

void timer_handler (señal entera sin signo)

{

bandera = 0;

}