clock_nanosleep man page on SunOS

Man page or keyword search:  
man Server   20652 pages
apropos Keyword Search (all sections)
Output format
SunOS logo
[printable version]

clock_nanosleep(3RT)	  Realtime Library Functions	  clock_nanosleep(3RT)

NAME
       clock_nanosleep - high resolution sleep with specifiable clock

SYNOPSIS
       cc [ flag... ] file... -lrt [ library... ]
       #include <time.h>

       int  clock_nanosleep(clockid_t  clock_id, int flags, const struct time‐
       spec *rqtp, struct timespec *rmtp);

DESCRIPTION
       If the flag TIMER_ABSTIME  is  not  set	in  the	 flags	argument,  the
       clock_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 the  process
       is  terminated.	The clock used to measure the time is the clock speci‐
       fied by clock_id.

       If  the	flag  TIMER_ABSTIME  is	 set  in  the  flags   argument,   the
       clock_nanosleep()  function  causes  the current thread to be suspended
       from execution until either the time value of the  clock	 specified  by
       clock_id reaches the absolute time specified by the rqtp argument, or a
       signal is delivered to the calling thread and its action is to invoke a
       signal-catching function, or the process is terminated. If, at the time
       of the call, the time value specified by rqtp is less than or equal  to
       the  time  value of the specified clock, then clock_nanosleep() returns
       immediately and the calling process is not suspended.

       The suspension  time  caused  by	 this  function	 can  be  longer  than
       requested because the argument value is rounded up to an integer multi‐
       ple 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	 for  the  relative  clock_nanosleep()
       function	 (that	is,  with  the TIMER_ABSTIME flag not set) will not be
       less than the time interval specified by rqtp, as measured by the  cor‐
       responding  clock.  The	suspension  for the absolute clock_nanosleep()
       function (that is, with the TIMER_ABSTIME flag set) will be  in	effect
       at  least  until the value of the corresponding clock reaches the abso‐
       lute time specified by rqtp, except for the case of  being  interrupted
       by a signal.

       The  use	 of the clock_nanosleep() function has no effect on the action
       or blockage of any signal.

       The clock_nanosleep() function fails if the clock_id argument refers to
       the CPU-time clock of the calling thread. It is unspecified if clock_id
       values of other CPU-time clocks are allowed.

RETURN VALUES
       If the clock_nanosleep() function returns because  the  requested  time
       has elapsed, its return value is 0.

       If  the	clock_nanosleep()  function returns because it has been inter‐
       rupted by a signal, it returns the corresponding error value.  For  the
       relative	 clock_nanosleep() function, 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. The absolute clock_nanosleep() function has no effect
       on the structure referenced by rmtp.

       If clock_nanosleep() fails, it shall  return  the  corresponding	 error
       value.

ERRORS
       The clock_nanosleep() function will fail if:

       EINTR	       The  clock_nanosleep()  function	 was  interrupted by a
		       signal.

       EINVAL	       The rqtp argument specified  a  nanosecond  value  less
		       than zero or greater than or equal to 1,000 million; or
		       the TIMER_ABSTIME flag was specified in flags  and  the
		       rqtp argument is outside the range for the clock speci‐
		       fied by clock_id; or the	 clock_id  argument  does  not
		       specify	a known clock, or specifies the CPU-time clock
		       of the calling thread.

       ENOTSUP	       The clock_id  argument  specifies  a  clock  for	 which
		       clock_nanosleep()  is not supported, such as a CPU-time
		       clock.

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:

       ┌─────────────────────────────┬─────────────────────────────┐
       │      ATTRIBUTE TYPE	     │	    ATTRIBUTE VALUE	   │
       ├─────────────────────────────┼─────────────────────────────┤
       │Interface Stability	     │Standard			   │
       ├─────────────────────────────┼─────────────────────────────┤
       │MT-Level		     │MT-Safe			   │
       └─────────────────────────────┴─────────────────────────────┘

SEE ALSO
       clock_getres(3RT),     nanosleep(3RT),	   pthread_cond_timedwait(3C),
       sleep(3C), attributes(5), standards(5)

SunOS 5.10			  30 Jan 2004		  clock_nanosleep(3RT)
[top]

List of man pages available for SunOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net