sleep(3)

sleep3

Suspend thread execution for an interval measured in seconds

Usage

#include <unistd.h>

unsigned int

sleep(unsigned int seconds);

Library

Standard C Library (libc, -lc)

Overview

The sleep() function suspends execution of the calling thread until either seconds seconds have elapsed or a signal is delivered to the thread and its action is to invoke a signal-catching function or to terminate the thread or process. System activity may lengthen the sleep by an indeterminate amount.

This function is implemented using nanosleep(2) by pausing for seconds seconds or until a signal occurs. Consequently, in this implementation, sleeping has no effect on the state of process timers, and there is no special handling for SIGALRM.

Return values

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 requested time minus the time actually slept) in seconds.

Releases

163 releases since Mac OS X 10.0; the text changed 4 times.

  1. 10.0–10.1.5
  2. 10.2–10.3.9
  3. 10.4–10.4.11
  4. 10.5–10.6.8
  5. 10.7–26.5

Standards

The sleep() function conforms to ISO/IEC 9945-1:1990 (“POSIX.1”).

History

A sleep() function appeared in Version 7 AT&T UNIX.

From Libc 1752.120.2 in macOS 26.5. Parsed by carta from the page's mdoc source.