sleep - suspend process execution for interval of seconds
#include <unistd.h>
unsigned int
sleep(unsigned int seconds);
The sleep() function suspends execution of the calling process until either
the number of seconds specified by seconds have elapsed
or a signal
is delivered to the calling process and its action is to invoke a signalcatching
function or to terminate the process. The suspension time may
be longer than requested due to the scheduling of other activity by the
system.
This function is implemented using nanosleep(2); it requires
one system
call each time it is invoked. A similar but less compatible
function can
be obtained with a single select(2); such a function would
not restart
after signals, and also does not interfere with other uses
of
setitimer(2) (not that sleep() interferes with interval
timers anymore).
If the sleep() function returns because the requested time
has elapsed,
the value returned will be zero. If the sleep() function
returns due to
the delivery of a signal, the value returned will be the unslept amount
(the request time minus the time actually slept) in seconds.
nanosleep(2), select(2), setitimer(2), sigaction(2), sigsuspend(2),
alarm(3), pause(3), usleep(3)
The sleep() function conforms to IEEE Std 1003.1-1990
(``POSIX'').
A sleep() function appeared in Version 7 AT&T UNIX.
OpenBSD 3.6 June 4, 1993
[ Back ] |