GNU/Linux >> Tutoriales Linux >  >> Linux

signalfd() pierde señales

Si hay varias señales estándar (es decir, en tiempo no real) pendientes para un proceso, el sistema operativo puede decidir fusionar varias señales del mismo tipo en una sola.

Desde POSIX:

2.4.1 Generación y entrega de señales

[...]

Si se genera una aparición posterior de una señal pendiente, la implementación define si la señal se entrega o acepta más de una vez en circunstancias distintas a aquellas en las que se requiere hacer cola.

Las señales estándar no se ponen en cola de forma predeterminada. La única forma de tener una señal estándar en cola es emitiéndola usando sigqueue() .


Linux
  1. ¿Cerrar la salida estándar (>&-)?

  2. ¿Cómo verificar qué señales está escuchando un proceso?

  3. 5 ejemplos de declaraciones de casos Bash

  4. ¿Se puede ignorar (perder) la señal?

  5. ¿Qué son las señales pendientes?

¿Qué causa que se envíen varias señales?

Cómo instalar la aplicación Signal Messaging en Ubuntu 20.04

Python - Atrapa todas las señales

¿Cómo se relaciona SIGINT con las otras señales de terminación como SIGTERM, SIGQUIT y SIGKILL?

¿Qué es un proceso detenido en Linux?

¿Qué números de señal funcionan con el comando de matar?