Provided by: manpages-es_1.55-9_all bug

NOMBRE

       sigqueue - envía una señal y un bloque de datos a un proceso

SINOPSIS

       #include <signal.h>

       int sigqueue(pid_t pid, int sig, const union sigval value);

DESCRIPCIÓN

       sigqueue()   envía  la  señal  especificada  en  sig  al  proceso  cuyo
       identificador de proceso es dado en pid.  Los permisos requeridos  para
       enviar  la  señal  son  los  mismos  que  para  kill(2).  Como pasa con
       kill(2), la señal nula (0) puede emplearse para comprobar si existe  un
       proceso con un identificador de proceso dado.

       El  argumento  value  se  utiliza  para  especificar un bloque de datos
       acompañante (o bien un entero o un  puntero)  que  se  enviará  con  la
       señal, y que tiene el siguiente tipo:

         union sigval {
             int   sival_int;
             void *sival_ptr;
         };

       Si  el  proceso  receptor  tiene un manejador instalado para esta señal
       usando la opción SA_SIGINFO en la llamada a sigaction(2), puede obtener
       los datos a través del campo si_value de la estructura siginfo_t pasada
       como segundo argumento al manejador.   Además,  se  asignará  al  campo
       si_code de esta estructura el valor SI_QUEUE.

VALOR DEVUELTO

       En  caso  de  éxito,  sigqueue() devuelve 0, indicando que la señal fue
       ennviada satisfactoriamente al  proceso  receptor.   En  otro  caso  se
       devuelve -1 y errno se modifica para indicar el error.

ERRORES

       EAGAIN Se  alcanzó el límite de señales que puede ser encolado.  (Véase
              signal(7) para más información.)

       EINVAL sig es inválido.

       ESRCH  No hay ningún proceso cuyo identificador de proceso coincida con
              pid.

       EPERM  El  proceso  no  tiene  permiso  para enviar la señal al proceso
              receptor.  (Véase kill(2) para más información.)

OBSERVACIONES

       Si esta función termina por enviar una señal al proceso que la  invocó,
       y  esa  señal  no  fue  bloqueada por el hilo invocador, y no hay otros
       hilos dispuestos  a  manejar  esta  señal  (ya  sea  porque  la  tienen
       desbloqueada  o  porque  la  esperan  con  sigwait(3)), entonces deberá
       enviarse al menos alguna señal a este hilo antes de  que  esta  función
       regrese.

CONFORME A

       POSIX 1003.1-2001

VÉASE TAMBIÉN

       kill(2), sigaction(2), signal(2), sigwait(3), signal(7)