sleep(3) Library Functions Manual sleep(3)
NAME
sleep - sleep for a specified number of seconds
LIBRARY
Standard C library (libc, -lc)
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 attrib-
utes(7).
┌───────────────────────┬───────────────┬─────────────────────────────┐
│ Interface │ Attribute │ Value │
├───────────────────────┼───────────────┼─────────────────────────────┤
│ sleep() │ Thread safety │ MT-Unsafe sig:SIGCHLD/linux │
└───────────────────────┴───────────────┴─────────────────────────────┘
VERSIONS
On Linux, sleep() is implemented via nanosleep(2). See the
nanosleep(2) man page for a discussion of the clock used.
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.
STANDARDS
POSIX.1-2008.
HISTORY
POSIX.1-2001.
CAVEATS
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)
Linux man-pages 6.7 2023-10-31 sleep(3)
Generated by dwww version 1.16 on Mon Jul 13 13:24:57 CEST 2026.