table of contents
- bookworm 1:4.18.1-1
- bookworm-backports 1:4.22.0-1~bpo12+3
- testing 1:4.22.0-1
- unstable 1:4.22.0-1
USLEEP(3) | Podręcznik programisty Linuksa | USLEEP(3) |
NAZWA¶
usleep - zawiesza wykonanie na czas wyrażony w mikrosekundach
SKŁADNIA¶
#include <unistd.h>
int usleep(useconds_t usec);
usleep():
Since glibc 2.12:
(_XOPEN_SOURCE >= 500) && ! (_POSIX_C_SOURCE >= 200809L)
|| /* Glibc since 2.19: */ _DEFAULT_SOURCE
|| /* Glibc <= 2.19: */ _BSD_SOURCE
Before 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¶
The usleep() function returns 0 on success. On error, -1 is returned, with errno set to indicate the error.
BŁĘDY¶
ATRYBUTY¶
Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7).
Interfejs | Atrybut | Wartość |
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 5.13 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 są: Robert Luberda <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>
Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.
Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej manpages-pl-list@lists.sourceforge.net.
22 marca 2021 r. |