Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

nanosleep(3c) [opensolaris man page]

nanosleep(3C)						   Standard C Library Functions 					     nanosleep(3C)

NAME
nanosleep - high resolution sleep SYNOPSIS
#include <time.h> 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, CLOCK_REALTIME. 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 indi- cate the interruption. If the rmtp argument is non-NULL, 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 NULL, the remaining time is not returned. If nanosleep() fails, it returns -1 and sets errno to indicate the error. ERRORS
The nanosleep() function will fail if: EINTR The nanosleep() function was interrupted by a signal. 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. ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ |ATTRIBUTE TYPE |ATTRIBUTE 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 5 Feb 2008 nanosleep(3C)

Check Out this Related Man Page

nanosleep(3)						     Library Functions Manual						      nanosleep(3)

NAME
nanosleep - Suspends a process from execution for the specified timer interval (P1003.1b) LIBRARY
Realtime Library (librt.so, librt.a) SYNOPSIS
#include <time.h> int nanosleep ( const struct timespec *rqtp, struct timespec *rmtp); PARAMETERS
*rqtp A pointer to the timespec data structure that defines the time interval during which the calling process is suspended. *rmtp A pointer to the timespec data structure that receives the amount of time remaining in the previously requested interval, or zero if the full interval has elapsed. DESCRIPTION
The nanosleep function suspends a process until one of the following conditions is met: o The time interval specified in rqtp has elapsed. o A signal is delivered to the calling process and the action is to deliver a signal to 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 clock resolution, or due to the scheduling of other activity. Except when it is interrupted by a signal, the suspension time is not less than the time speci- fied by the rqtp argument (as measured by the system clock). RETURN VALUES
When the nanosleep function returns because the requested time has elapsed, the call is successful and a value of 0 (zero) is returned. If the nanosleep function returns because it was interrupted by a signal, a value of -1 is returned. If the rmtp argument is not NULL, the timespec structure referenced by the call is updated to contain the time remaining in the interval. If the rmtp argument is NULL, the remaining time is not returned. On an unsuccessful call, a value of -1 is returned and errno is set to indicate that an error occurred. ERRORS
The nanosleep function fails under the following conditions: [EINTR] The nanosleep function was interrupted by a signal. [EINVAL] The rqtp argument specified a nanosecond value less than zero or greater than or equal to 1000 million. RELATED INFORMATION
Functions: sleep(1) Guide to Realtime Programming delim off nanosleep(3)
Man Page