usleep(3) | Library Functions Manual | usleep(3) |
usleep - задерживает выполнение на определенное количество микросекунд
Standard C library (libc, -lc)
#include <unistd.h>
int usleep(useconds_t usec);
usleep():
Since glibc 2.12: (_XOPEN_SOURCE >= 500) && ! (_POSIX_C_SOURCE >= 200809L) || /* glibc >= 2.19: */ _DEFAULT_SOURCE || /* glibc <= 2.19: */ _BSD_SOURCE Before glibc 2.12: _BSD_SOURCE || _XOPEN_SOURCE >= 500
Функция usleep() приостанавливает выполнение вызвавшей нити на (не менее) usec микросекунд. Остановка может продлиться слегка больше при большой загруженности системы, из-за, собственно, времени обработки этого вызова или из-за неточности хода системных часов.
The usleep() function returns 0 on success. On error, -1 is returned, with errno set to indicate the error.
Описание терминов данного раздела смотрите в attributes(7).
Интерфейс | Атрибут | Значение |
usleep() | Безвредность в нитях | MT-Safe |
4.3BSD, POSIX.1-2001. В POSIX.1-2001 эта функция объявлена устаревшей; вместо неё используйте nanosleep(2). Из POSIX.1-2008 описание usleep() было удалено.
On the original BSD implementation, and before glibc 2.2.2, the return type of this function is void. The POSIX version returns int, and this is also the prototype used since glibc 2.2.2.
Возвращаемая ошибка EINVAL определена только в SUSv2 и POSIX.1-2001.
Взаимодействие этой функции с сигналом SIGALRM и другими функциями таймера, такими как 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), не определено.
alarm(2), getitimer(2), nanosleep(2), select(2), setitimer(2), sleep(3), ualarm(3), useconds_t(3type), time(7)
Русский перевод этой страницы руководства был сделан Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitriy Ovchinnikov <dmitriyxt5@gmail.com>, Dmitry Bolkhovskikh <d20052005@yandex.ru>, Katrin Kutepova <blackkatelv@gmail.com>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>
Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3 или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.
Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на man-pages-ru-talks@lists.sourceforge.net.
5 февраля 2023 г. | Linux man-pages 6.03 |