Los datos expuestos en este blog, son solo de índole informativo. Por favor realiza siempre una copia de seguridad antes de realizar cualquier cambio en tu proyecto.
Lenguaje C: función de señal
(instalar controlador de señal)
En el lenguaje de programación C, Función de señal Instale una función como controlador de la señal.
sintaxis
La sintaxis de las funciones de señal en lenguaje C es:
void (*signal(int sig, void (*func)(int)))(int);
parámetro o parámetro
El valor de la señal sig. func Una función instalada como controlador de señales.
devolver los bienes
La función de señal devuelve un puntero al controlador anterior de la señal. Si no se puede instalar el controlador, la función de señal devuelve SIG_ERR.
titulo requerido
En C, los archivos de encabezado necesarios para la función de señal son:
#include <signal.h>
aplicar para
En C, las funciones de señal están disponibles en las siguientes versiones:
- ANSI/ISO 9899-1990
Ejemplo de señal
/* Example using signal by TechOnTheNet.com */ #include <stdio.h> #include <stdlib.h> #include <signal.h> void signal_handler(int signal) { /* Display a message indicating we have received a signal */ if (signal == SIGUSR2) printf("Received a SIGUSR2 signaln"); /* Exit the application */ exit(0); } int main(int argc, const char * argv[]) { /* Display a message indicating we are registering the signal handler */ printf("Registering the signal handlern"); /* Register the signal handler */ signal(SIGUSR2, signal_handler); /* Display a message indicating we are raising a signal */ printf("Raising a SIGUSR2 signaln"); /* Raise the SIGUSR2 signal */ raise(SIGUSR2); /* Display a message indicating we are leaving main */ printf("Finished mainn"); return 0; }
Cuando se compila y ejecuta, esta aplicación generará:
Registering the signal handler Raising a SIGUSR2 signal Received a SIGUSR2 signal
ver también
Otras funciones de C que vale la pena mencionar cuando se trata de funciones de señal:
- función de cancelación
- función de impulso