Les signaux
 


  
   Pour gérer les signaux on utilise une table de hachage %SIG qui contient des références sur des gestionnaires de signaux. Lorsqu'un événement se produit, le gestionnaire correspondant est appelé avec un argument contenant le nom du signal qui l'a déclenché.
Pour envoyer un signal a un autre processus, on utilise la fonction kill.

Le programme suivant montre l'utilisation de la table de hachage permettant de gérer les signaux en Perl.

#!/usr/bin/perl

sub attrape {
my $nomsig= shift;
die "Quelqu'un m'a envoyé un SIG $nomsig!";
}

$SIG{INT} = \&attrape;

unless(kill 2 => $kid_pid){warn "il s'est passe qq chose!";}

   Dans ce programme la commande shift permet de récupérer le l'argument qui a été passé au moment de l'appelle du gestionnaire. La fonction die permet d'envoyer une exception.