Provided by: manpages-dev_4.15-1_all 

NAME
sleep - sleep for a specified number of seconds
SYNOPSIS
#include <unistd.h>
unsigned int sleep(unsigned int seconds);
DESCRIPTION
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.
RETURN VALUE
Zero if the requested time has elapsed, or the number of seconds left to sleep, if the call was
interrupted by a signal handler.
ATTRIBUTES
For an explanation of the terms used in this section, see attributes(7).
┌───────────┬───────────────┬─────────────────────────────┐
│ Interface │ Attribute │ Value │
├───────────┼───────────────┼─────────────────────────────┤
│ sleep() │ Thread safety │ MT-Unsafe sig:SIGCHLD/linux │
└───────────┴───────────────┴─────────────────────────────┘
CONFORMING TO
POSIX.1-2001, POSIX.1-2008.
NOTES
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.
SEE ALSO
sleep(1), alarm(2), nanosleep(2), signal(2), signal(7)
COLOPHON
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)