Standard C Library Functions nanosleep(3C)
NAME
nanosleep - high resolution sleep
SYNOPSIS
#include
int nanosleep(const struct timespec *rqtp,
struct timespec *rmtp);
DESCRIPTION
The nanosleep() function causes the current thread to be
suspended from execution until either the time interval
specified by the rqtp argument has elapsed or a signal is
delivered to the calling thread and its action is to invoke
a signal-catching function or to terminate the process. The
suspension time may be longer than requested because the
argument value is rounded up to an integer multiple of the
sleep resolution or because of the scheduling of other
activity by the system. But, except for the case of being
interrupted by a signal, the suspension time will not be
less than the time specified by rqtp, as measured by the
system clock, CLOCKREALTIME.
The use of the nanosleep() function has no effect on the
action or blockage of any signal.
RETURN VALUES
If the nanosleep() function returns because the requested
time has elapsed, its return value is 0.
If the nanosleep() function returns because it has been
interrupted by a signal, the function returns a value of -1
and sets errno to indicate the interruption. If the rmtp
argument is non-NUL, the timespec structure referenced by
it is updated to contain the amount of time remaining in the
interval (the requested time minus the time actually slept).
If the rmtp argument is NUL, the remaining time is not
returned.
If nanosleep() fails, it returns -1 and sets errno to indi-
cate the error.
ERORS
The nanosleep() function will fail if:
EINTR The nanosleep() function was interrupted by a sig-
nal.
SunOS 5.11 Last change: 5 Feb 2008 1
Standard C Library Functions nanosleep(3C)
EINVAL The rqtp argument specified a nanosecond value
less than zero or greater than or equal to 1000
million.
ENOSYS The nanosleep() function is not supported by this
implementation.
ATRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
ATRIBUTE TYPE ATRIBUTE VALUE
Interface Stability Committed
MT-Level MT-Safe
Standard See standards(5).
SEE ALSO
sleep(3C), time.h(3HEAD), attributes(5), standards(5)
SunOS 5.11 Last change: 5 Feb 2008 2
|