SLEEP(3) | Руководство программиста Linux | SLEEP(3) |
sleep - приостанавливает выполнение на заданное число секунд
#include <unistd.h>
unsigned int sleep(unsigned int seconds);
Функция sleep() заставляет вызывающую нить заснуть пока не пройдёт число секунд реального времени seconds или пока не поступит сигнал, который невозможно проигнорировать.
Ноль, если запрошенное время истекло, или число секунд, оставшихся до пробуждения в случае, когда вызов был прерван обработчиком сигнала.
Описание терминов данного раздела смотрите в attributes(7).
Интерфейс | Атрибут | Значение |
sleep() | Безвредность в нитях | MT-Unsafe sig:SIGCHLD/linux |
POSIX.1-2001, POSIX.1-2008.
В Linux sleep() реализована через вызов nanosleep(2). Описание задействованных часов смотрите в справочной странице nanosleep(2).
В некоторых системах функция sleep() может быть реализована с помощью alarm(2) или SIGALRM (POSIX.1 это допускает); лучше не смешивать вызовы alarm(2) и sleep().
Использование longjmp(3) из обработчика сигнала или изменение обработки SIGALRM в момент сна может привести к непредсказуемым результатам.
2017-09-15 | GNU |