Provided by: manpages-pl-dev_0.7-2_all bug

NAZWA

       usleep - zawiesza wykonanie na czas wyrażony w mikrosekundach

SKŁADNIA

       #include <unistd.h>

       int usleep(useconds_t usec);

   Wymagane ustawienia makr biblioteki glibc (patrz feature_test_macros(7)):

       usleep():
           Od glibc 2.12:
               (_XOPEN_SOURCE >= 500) && ! (_POSIX_C_SOURCE >= 200809L)
                   || /* Glibc od 2.19: */ _DEFAULT_SOURCE
                   || /* Glibc w wersji <= 2.19: */ _BSD_SOURCE
           Przed glibc 2.12: _BSD_SOURCE || _XOPEN_SOURCE >= 500

OPIS

       Funkcja   usleep()   zawiesza   wykonanie  wywołującego  procesu  na  (co  najmniej)  usec
       mikrosekund. Zawieszenie może być delikatnie wydłużone przez jakąkolwiek aktywność systemu
       albo   przez  czas  spędzony  na  przetwarzaniu  wywołania,  albo  z  powodu  ziarnistości
       (częstotliwości odświeżania) liczników systemowych.

WARTOŚĆ ZWRACANA

       Funkcja usleep() w przypadku powodzenia zwraca 0. W razie wystąpienia błędu zwracane  jest
       -1 i ustawiana jest zmienna errno wskazując na błąd.

BŁĘDY

       EINTR  Przerwane przez sygnał, patrz signal(7).

       EINVAL usec  nie  jest mniejsze niż 1000000. (Dla systemów, dla których jest to traktowane
              jako błąd).

ATRYBUTY

       Informacje  o  pojęciach  używanych  w  tym  rozdziale   można   znaleźć   w   podręczniku
       attributes(7).

       ┌──────────┬────────────────────────┬─────────┐
       │InterfejsAtrybutWartość │
       ├──────────┼────────────────────────┼─────────┤
       │usleep()  │ Bezpieczeństwo wątkowe │ MT-Safe │
       └──────────┴────────────────────────┴─────────┘

ZGODNE Z

       4.3BSD,  POSIX.1-2001.   POSIX.1-2001  uznają  tę  funkcję  jako  przestarzałą,  sugerując
       używanie zamiast niej funkcji nanosleep(2).  POSIX.1-2008 usuwa opis funkcji usleep().

       W oryginalnej implementacji BSD oraz w wersjach wcześniejszych niż 2.2.2 biblioteki  glibc
       typem  zwracanym  przez  tę  funkcję  był void. Wersja POSIX zwraca int, taki typ jest też
       zwracany przez glibc od wersji 2.2.2.

       SUSv2 i POSIX.1-2001 dokumentują tylko błąd EINVAL.

UWAGI

       Typ useconds_t jest typem unsigned integer, zdolnym do przechowywania liczb naturalnych  z
       zakresu  [0,1000000].  Programy  będą  bardziej przenośne, gdy nigdy nie użyją wprost tego
       typu. Proszę użyć

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

       Interakcja tej funkcji z sygnałem SIGALRM oraz z innymi funkcjami licznikowymi, takimi jak
       alarm(2),   sleep(3),   nanosleep(2),   setitimer(2),   timer_create(2),  timer_delete(2),
       timer_getoverrun(2), timer_gettime(2), timer_settime(2), ualarm(3) jest nieokreślona.

ZOBACZ TAKŻE

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

O STRONIE

       Angielska  wersja  tej  strony  pochodzi  z  wydania  4.07  projektu Linux man-pages. Opis
       projektu, informacje dotyczące zgłaszania błędów oraz  najnowszą  wersję  oryginału  można
       znaleźć pod adresem https://www.kernel.org/doc/man-pages/.

TŁUMACZENIE

       Autorami  polskiego  tłumaczenia  niniejszej  strony  podręcznika  man  są: Robert Luberda
       <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>.

       Polskie tłumaczenie jest częścią projektu manpages-pl; uwagi, pomoc, zgłaszanie błędów  na
       stronie   http://sourceforge.net/projects/manpages-pl/.   Jest   zgodne   z  wersją   4.07
       oryginału.

                                            2016-03-15                                  USLEEP(3)