Signal pendant

Définition, exemples et bonnes pratiques

À retenir

  • C'est l'état d'un signal entre son émission par le système et sa réception par le programme.
  • Un signal devient pendant car le programme destinataire l'a temporairement bloqué ou masqué.
  • Dès que le programme lève son blocage, le signal pendant est immédiatement délivré.

Un signal pendant est un message d'alerte envoyé par le système d'exploitation à un logiciel, mais que ce dernier n'a pas encore lu ou traité. C'est un peu comme un SMS reçu sur votre téléphone que vous n'avez pas encore ouvert car vous êtes en pleine réunion : la notification est là, en attente (pendante), jusqu'à ce que vous soyez disponible pour la consulter.

Étymologie

Vient du latin signalis (relatif au signe) et de l'adjectif « pendant », utilisé ici dans son sens administratif ou juridique signifiant « en cours » ou « non encore résolu » (comme une affaire pendante devant un tribunal).

Exemples d'usage

  • Un utilisateur tente de fermer un logiciel (signal SIGINT), mais le logiciel a temporairement bloqué les interruptions pour terminer une sauvegarde importante : le signal reste pendant.
  • Un système envoie une notification de fin de tâche à un programme qui est déjà très occupé à calculer des données complexes.

Cas d'usage

On rencontre ce concept principalement en programmation système (sous Linux ou Unix) et dans la gestion des processus. Il intervient lorsqu'un programme définit un « masque de signaux » pour ignorer temporairement certaines alertes afin de ne pas être interrompu durant une opération critique.

Bonnes pratiques

Il est crucial de ne pas laisser les signaux pendants trop longtemps, car cela peut rendre une application instable ou insensible aux commandes de l'utilisateur. Attention : pour la plupart des signaux classiques, si le même signal est envoyé plusieurs fois alors qu'il est déjà en attente, le système n'en retiendra souvent qu'un seul.

Synonymes

signal en attente signal différé

Antonymes

signal délivré signal traité signal acquitté

Conseil

Si vous débutez en programmation, visualisez cela comme une file d'attente prioritaire. Si votre programme semble ne plus répondre aux touches de clavier ou aux demandes d'arrêt, c'est probablement qu'il a trop de signaux pendants qu'il a oublié de débloquer.

Questions fréquentes

Quelle est la différence entre un signal bloqué et un signal pendant ?

Le signal bloqué est celui que le programme refuse de recevoir pour l'instant. Le signal pendant est l'instance concrète de ce signal qui attend dans la file du système.

Est-ce que plusieurs signaux identiques peuvent s'accumuler ?

Généralement non pour les signaux standards : un seul exemplaire est conservé. En revanche, les signaux dits 'temps réel' peuvent s'empiler dans une file d'attente.