|
NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | ATTRIBUTES | CONFORMING TO | NOTES | SEE ALSO | COLOPHON |
|
SLEEP(3) Linux Programmer's Manual SLEEP(3)
sleep - sleep for a specified number of seconds
#include <unistd.h>
unsigned int sleep(unsigned int seconds);
sleep() causes the calling thread to sleep either until the number of
real-time seconds specified in seconds have elapsed or until a signal
arrives which is not ignored.
Zero if the requested time has elapsed, or the number of seconds left
to sleep, if the call was interrupted by a signal handler.
For an explanation of the terms used in this section, see
attributes(7).
┌──────────┬───────────────┬─────────────────────────────┐
│Interface │ Attribute │ Value │
├──────────┼───────────────┼─────────────────────────────┤
│sleep() │ Thread safety │ MT-Unsafe sig:SIGCHLD/linux │
└──────────┴───────────────┴─────────────────────────────┘
POSIX.1-2001, POSIX.1-2008.
On Linux, sleep() is implemented via nanosleep(2). See the
nanosleep(2) man page for a discussion of the clock used.
Portability notes
On some systems, sleep() may be implemented using alarm(2) and
SIGALRM (POSIX.1 permits this); mixing calls to alarm(2) and sleep()
is a bad idea.
Using longjmp(3) from a signal handler or modifying the handling of
SIGALRM while sleeping will cause undefined results.
sleep(1), alarm(2), nanosleep(2), signal(2), signal(7)
This page is part of release 4.15 of the Linux man-pages project. A
description of the project, information about reporting bugs, and the
latest version of this page, can be found at
https://www.kernel.org/doc/man-pages/.
GNU 2017-09-15 SLEEP(3)
Pages that refer to this page: alarm(2), clock_nanosleep(2), getitimer(2), nanosleep(2), ualarm(3), usleep(3), signal(7), signal-safety(7), time(7)
Copyright and license for this manual page