Documentation Archive Developer
Search
ADC Home > Reference Library > Reference > Mac OS X > Mac OS X Man Pages

 

This document is a Mac OS X manual page. Manual pages are a command-line technology for providing documentation. You can view these manual pages locally using the man(1) command. These manual pages come from many different sources, and thus, have a variety of writing styles.

For more information about the manual page format, see the manual page for manpages(5).



USLEEP(3)                BSD Library Functions Manual                USLEEP(3)

NAME
     usleep -- suspend thread execution for an interval measured in microsec-onds microseconds
     onds

LIBRARY
     Standard C Library (libc, -lc)

SYNOPSIS
     #include <unistd.h>

     int
     usleep(useconds_t useconds);

DESCRIPTION
     The usleep() function suspends execution of the calling thread until
     either useconds microseconds have elapsed or a signal is delivered to the
     thread whose action is to invoke a signal-catching function or to termi-nate terminate
     nate the thread or process.  The actual time slept may be longer, due to
     system latencies and possible limitations in the timer resolution of the
     hardware.

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

RETURN VALUES
     The usleep() function returns the value 0 if successful; otherwise the
     value -1 is returned and the global variable errno is set to indicate the
     error.

ERRORS
     The usleep() function will fail if:

     [EINTR]            A signal was delivered to the process and its action
                        was to invoke a signal-catching function.

SEE ALSO
     nanosleep(2), sleep(3)

HISTORY
     The usleep() function appeared in 4.3BSD.

BSD                            February 13, 1998                           BSD