manpagez: man (manual) pages & more
man usleep(3)
Home | html | info | man
usleep(3)                BSD Library Functions Manual                usleep(3)


NAME

     usleep -- suspend thread execution for an interval measured in microsec-
     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 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, 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

Mac OS X 10.8 - Generated Fri Aug 31 18:17:13 CDT 2012