USLEEP(3)

NOM
usleep - Interrompre le programme durant un nombre donné de microsecondes

SYNOPSIS
#include <unistd.h>

int usleep(useconds_t usec);

Exigences de macros de test de fonctionnalités pour la glibc (voir feature_test_macros(7)) :

usleep() : _BSD_SOURCE || _XOPEN_SOURCE >= 500

DESCRIPTION
La fonction usleep() suspend l'exécution du programme appelant durant (au moins) usec microsecondes. La période de sommeil peut être allongée par la charge système, par le temps passé à traiter l'appel de fonction, ou par la granularité des temporisations système.

VALEUR RENVOYÉE
0 en cas de succès, -1 en cas d'erreur.

ERREURS

EINTR
    Interruption par un signal ; voir signal(7).

EINVAL
    usec est plus grand que 1 000 000 (sur les systèmes où cela représente une erreur.

CONFORMITÉ
BSD 4.3, POSIX.1-2001. POSIX.1-2001 déclare cette fonction comme obsolète ; utilisez nanosleep(2) à la place. Dans l'implémentation BSD d'origine et dans la glibc avant la version 2.2.2, le type de retour de cette fonction était void. La version POSIX renvoie un int, et c'est également le prototype utilisé depuis la glibc 2.2.2. Seule l'erreur EINVAL est documentée par SUSv2 et POSIX.1-2001.

NOTES
Le type useconds_t est un entier non signé capable de contenir des entiers dans l'intervalle [0, 1000000]. Les programmes gagneront en portabilité en évitant de mentionner ce type explicitement. Utilisez

#include <unistd.h>
...
    unsigned int usecs;
...
    usleep(usecs);

L'interaction entre cette fonction et SIGALRM, ou d'autres fonctions comme alarm(2), sleep(3), nanosleep(2), setitimer(2), timer_create(3), timer_delete(3), timer_getoverrun(3), timer_gettime(3), timer_settime(3), ualarm(3) est indéfinie.

VOIR AUSSI
alarm(2), getitimer(2), nanosleep(2), select(2), setitimer(2), sleep(3), ualarm(3), time(7)

TRADUCTION

Ce document est une traduction réalisée par Christophe Blaess <http://www.blaess.fr/christophe/> le 11 décembre 1996 et révisée le 17 juillet 2008.

L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=C man 3 usleep ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.