NOM¶
ualarm - Programmer un signal après un nombre donné de microsecondes
SYNOPSIS¶
#include <unistd.h>
useconds_t ualarm(useconds_t usecs, useconds_t intervalle);
Exigences de macros de test de fonctionnalités pour la glibc (consultez
feature_test_macros(7)) :
ualarm() :
- Depuis la glibc 2.12 :
-
_BSD_SOURCE ||
(_XOPEN_SOURCE >= 500 ||
_XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED) &&
!(_POSIX_C_SOURCE >= 200809L || _XOPEN_SOURCE >= 700)
-
Avant la glibc 2.12 : _BSD_SOURCE || _XOPEN_SOURCE >= 500
||
-
_XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED
DESCRIPTION¶
La fonction
ualarm() programme le signal
SIGALRM pour qu'il soit
envoyé au processus appelant après (au moins)
usecs
microsecondes. Le délai peut être légèrement allongé
par la charge système, par le temps passé à traiter l'appel
système, ou par la granularité des timers système.
À moins d'être capturé ou ignoré, le signal
SIGALRM
terminera le processus.
Si l'argument
intervalle est non nul, d'autres signaux
SIGALRM
seront envoyés toutes les
intervalle microsecondes après le
premier.
VALEUR RENVOYÉE¶
Cette fonction renvoie le nombre de microsecondes restant pour toute alarme
définie précédemment, ou zéro si aucune alarme n'est en
attente.
ERREURS¶
- EINTR
- Interruption par un signal.
- EINVAL
- usecs ou intervalle est plus grand que
1 000 000 (1 seconde) (sur les systèmes qui
considèrent qu'il s'agit d'une erreur).
BSD 4.3, POSIX.1-2001. POSIX.1-2001 marque
ualarm() comme
obsolète. POSIX.1-2008 supprime la spécification de
ualarm().
BSD 4.3, SUSv2 et POSIX ne définissent pas d'erreurs.
NOTES¶
Le type
useconds_t est un entier non signé capable de contenir des
entiers dans l'intervalle [0,1000000]. Dans l'implémentation BSD
d'origine et dans la glibc avant la version 2.1, les paramètres de
ualarm() étaient des
unsigned int. Les programmes gagneront
en portabilité en évitant de mentionner le type
useconds_t
explicitement.
L'interaction entre cette fonction et les autres fonctions de temporisations
comme
alarm(2),
sleep(3),
nanosleep(2),
setitimer(2),
timer_create(2),
timer_delete(2),
timer_getoverrun(2),
timer_gettime(2),
timer_settime(2),
usleep(3) n'est pas spécifiée.
Cette fonction est obsolète. Utilisez
setitimer(2) ou des
temporisations POSIX (
timer_create(2), etc.) à la place.
VOIR AUSSI¶
alarm(2),
getitimer(2),
nanosleep(2),
select(2),
setitimer(2),
usleep(3),
time(7)
COLOPHON¶
Cette page fait partie de la publication 3.44 du projet
man-pages Linux.
Une description du projet et des instructions pour signaler des anomalies
peuvent être trouvées à l'adresse
<
http://www.kernel.org/doc/man-pages/>.
TRADUCTION¶
Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a
<
http://po4a.alioth.debian.org/> par l'équipe de traduction
francophone au sein du projet perkamon
<
http://perkamon.alioth.debian.org/>.
Christophe Blaess <
http://www.blaess.fr/christophe/> (1996-2003), Alain
Portal <
http://manpagesfr.free.fr/> (2003-2006). Nicolas François
et l'équipe francophone de traduction de Debian (2006-2009).
Veuillez signaler toute erreur de traduction en écrivant à
<debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
paquet
manpages-fr.
Vous pouvez toujours avoir accès à la version anglaise de ce document
en utilisant la commande «
man -L C
<section> <page_de_man> ».