USLEEP(3)

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

SYNOPSIS
#include <unistd.h>

int usleep(unsigned long usec);

Exigences de macros de test de fonctionalité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
En succès : zéro, en erreur -1.

ERREURS

EINTR
    Sommeil interrompu par un signal.

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 obsolète ; utilisez nanosleep(2) à la place. Sur l'implémentation BSD originale et dans la glibc avant la version 2.2.2, le type de retour de cette fonction est 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.

NOTES
Le type useconds_t est un entier non-signé capable de contenir des entiers dans l'intervalle [0,1000000]. Les programmes gagneront en portabiblité 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), ualarm(3), sleep(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 19 décembre 2007.

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.