Procesos en C: Ejemplo de un sencillo cronómetro con SIGALRM
Octubre 19th, 2009 Posted in C/C++, programacion
Continuando con el artículo de la semana pasada sobre procesos en C hoy os dejo aquí un sencillo ejemplo de un cronómetro:
// Para las funciones pause y alarm: #include <unistd.h> // Para las constantes SIGALRM y similares #include <signal.h> #include <stdio.h> // Esta es la función que se va a ejecutar cada vez que se reciba la // señal SIGALRM void contar_segundos() { // Usamos static para que se conserve el valor de "segundos" // entre cada llamada a la función static int segundos=0; segundos++; printf("Han pasado %d segundos.\n", segundos); } int main() { // Asociamos la señal SIGALRM a la función contar_segundos signal(SIGALRM, contar_segundos); // Ponemos en marcha un bucle while(1) { // Establecemos una alarma para dentro de un segundo alarm(1); // Pausamos la ejecución del programa para que // se quede esperando a recibir una señal. pause(); } }
¿Necesitas ayuda con algún trabajo de clase? Entra en BuscoProfe.com


