sleep(3) — Linux manual page


SLEEP(3)                Linux Programmer's Manual               SLEEP(3)

NAME         top

       sleep - sleep for a specified number of seconds

SYNOPSIS         top

       #include <unistd.h>

       unsigned int sleep(unsigned int seconds);

DESCRIPTION         top

       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         top

       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         top

       For an explanation of the terms used in this section, see

       │Interface         Attribute     Value                       │
       │sleep()           │ Thread safety │ MT-Unsafe sig:SIGCHLD/linux │

CONFORMING TO         top

       POSIX.1-2001, POSIX.1-2008.

NOTES         top

       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         top

       sleep(1), alarm(2), nanosleep(2), signal(2), signal(7)

COLOPHON         top

       This page is part of release 5.13 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

GNU                            2021-03-22                       SLEEP(3)

Pages that refer to this page: sleep(1)alarm(2)clock_nanosleep(2)getitimer(2)nanosleep(2)ualarm(3)usleep(3)signal(7)signal-safety(7)time(7)