Mac Developer Library Developer


This manual page is part of Xcode Tools version 5.0

To obtain these tools:

If you are running a version of Xcode Tools other than 5.0, view the documentation locally:

  • In Xcode

  • In Terminal, using the man(1) command

Reading manual pages

Manual pages are intended as a quick reference for people who already understand a technology.

  • To learn how the manual is organized or to learn about command syntax, read the manual page for manpages(5).

  • For more information about this technology, look for other documentation in the Apple Developer Library.

  • For general information about writing shell scripts, read Shell Scripting Primer.

NANOSLEEP(2)                BSD System Calls Manual               NANOSLEEP(2)

     nanosleep -- suspend thread execution for an interval measured in nanoseconds

     Standard C Library (libc, -lc)

     #include <time.h>

     nanosleep(const struct timespec *rqtp, struct timespec *rmtp);

     The nanosleep() function causes the calling thread to sleep for the amount of time specified in rqtp
     (the actual time slept may be longer, due to system latencies and possible limitations in the timer
     resolution of the hardware).  An unmasked signal will cause nanosleep() to terminate the sleep early,
     regardless of the SA_RESTART value on the interrupting signal.

     If nanosleep() returns because the requested time has elapsed, the value returned will be zero.

     If nanosleep() returns due to the delivery of a signal, the value returned will be the -1, and the
     global variable errno will be set to indicate the interruption.  If rmtp is non-NULL, the timespec
     structure it references is updated to contain the unslept amount (the request time minus the time actu-ally actually
     ally slept).

     The nanosleep() call fails if:

     [EINTR]            nanosleep() was interrupted by the delivery of a signal.

     [EINVAL]           rqtp specified a nanosecond value less than zero or greater than or equal to 1000

     sigsuspend(2), sleep(3)

     The nanosleep() function conforms to IEEE Std 1003.1b-1993 (``POSIX.1'').

BSD                             April 17, 1997                             BSD

Reporting Problems

The way to report a problem with this manual page depends on the type of problem:

Content errors
Report errors in the content of this documentation with the feedback links below.
Bug reports
Report bugs in the functionality of the described tool or API through Bug Reporter.
Formatting problems
Report formatting mistakes in the online version of these pages with the feedback links below.