Linux |
CentOS 4.8 |
|
alarm(2) |
alarm − Programmer un réveil (timer) pour l’émission d’un signal. |
#include <unistd.h> unsigned int alarm(unsigned int nb_sec); |
alarm programme une temporisation pour qu’elle envoie un signal SIGALRM au processus en cours dans nb_sec secondes. Si le signal n’est pas masqué ou intercepté, sa réception terminera le processus. Les programmations successives d’alarmes ne sont pas empilées, chaque appel de alarm annule l’éventuelle programmation précédente. Si nb_sec vaut zéro, aucune alarme n’est planifiée. |
alarm renvoie le nombre de secondes qu’il restait de la programmation précédente (annulée), ou zéro si aucune alarme n’avait été planifiée auparavant. |
Les fonctions alarm et setitimer partagent la même temporisation, aussi l’appel de l’une interfère avec l’utilisation de l’autre. sleep() peut être implémenté en utilisant SIGALRM, aussi il est déconseillé de mélanger les appels alarm() et sleep(). Les délais dûs au multitâche peuvent, comme toujours, retarder le déclenchement d’une alarme d’une durée arbitraire. |
SVr4, SVID, POSIX, X/OPEN, BSD 4.3 |
setitimer(2), signal(2), sigaction(2), gettimeofday(2), select(2), pause(2), sleep(3) |
Christophe Blaess, 1997. |
alarm(2) |