ualarm

Autres langues

Langue: fr

Version: 30 juillet 2003 (openSuse - 09/10/07)

Section: 3 (Bibliothèques de fonctions)

NOM

ualarm - Programme un signal après un nombre donné de microsecondes.

SYNOPSIS


/* version BSD */

#include <unistd.h>



unsigned int


ualarm(unsigned int usecs, unsigned int interval); /* version SUSv2 */ #define _XOPEN_SOURCE 500
#include <unistd.h> useconds_t ualarm(useconds_t usecs, useconds_t interval);

DESCRIPTION

La fonction ualarm() programme le signal SIGALRM pour qu'il soit envoyé au processus appelant après (au moins) usecs micro-secondes. Le délai peut être alongé légèrement 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 ignoeé, ce signal terminera le processus.

Si l'argument interval est non-nul, d'autres signaux SIGALR seront envoyés toutes les interval micro-secondes après le premier.

VALEUR RENVOYÉE

Cette fonction renvoie le nombre de micro-secondes restant de l'appel précédent, ou zéro si aucune alarme n'est en attente.

ERREURS

EINTR
Interruption par un signal.
EINVAL
usecs ou interval est plus grand que 1000000 (1 seconde) (sur les systèmes qui considèrent qu'il s'agit d'une erreur).

CONFORMITÉ

BSD 4.3. BSD 4.3 et SUSv2 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]. Ce type est défini dans <sys/types.h> inclu par <unistd.h> mais GlibC ne le définit que si _XOPEN_SOURCE a une valeur supérieure ou égale à 500, ou si _XOPEN_SOURCE et _XOPEN_SOURCE_EXTENDED sont toutes deux définies. Les programmes seront plus portables s'ils évitent d'utiliser ce type.

Les interactions entre cette fonction et les autres temporisations comme alarm(), sleep(), nanosleep(), setitimer(), timer_create(), timer_delete(), timer_getoverrun(), timer_gettime(), timer_settime(), usleep() n'est pas spécifiée.

Cette fonction est obsolète, utilisez nanosleep(2) ou setitimer(2) à sa place.

VOIR AUSSI

alarm(2), getitimer(2), nanosleep(2), select(2), setitimer(2), usleep(3)

TRADUCTION

Christophe Blaess, 2003.