timer_create man page on SmartOS

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

TIMER_CREATE(3C)					      TIMER_CREATE(3C)

NAME
       timer_create - create a timer

SYNOPSIS
       #include <signal.h>
       #include <time.h>

       int timer_create(clockid_t clock_id,
	    struct sigevent *restrict evp, timer_t *restrict timerid);

DESCRIPTION
       The  timer_create() function creates a timer using the specified clock,
       clock_id, as the timing base. The timer_create() function  returns,  in
       the  location referenced by timerid, a timer ID of type timer_t used to
       identify the timer in timer requests. This  timer  ID  will  be	unique
       within  the  calling process until the timer is deleted. The particular
       clock, clock_id, is defined in <time.h>. The timer whose ID is returned
       will be in a disarmed state upon return from timer_create().

       The  evp	 argument,  if	non-null, points to a sigevent structure. This
       structure, allocated by the application, defines the asynchronous noti‐
       fication	 that  will  occur when the timer expires (see signal.h(3HEAD)
       for event notification details). If  the	 evp  argument	is  NULL,  the
       effect  is  as if the evp argument pointed to a sigevent structure with
       the sigev_notify member having the value SIGEV_SIGNAL, the  sigev_signo
       having  the value SIGALARM, and the sigev_value member having the value
       of the timer ID.

       The system defines a set of clocks that can be used as timing bases for
       per-process timers. The following values for clock_id are supported:

       CLOCK_REALTIME
			 wall clock

       CLOCK_VIRTUAL
			 user CPU usage clock

       CLOCK_PROF
			 user and system CPU usage clock

       CLOCK_HIGHRES
			 non-adjustable, high-resolution clock

       For  timers  created  with a clock_id of CLOCK_HIGHRES, the system will
       attempt to use an optimal hardware source. This may include, but is not
       limited	to, per-CPU timer sources.  The actual hardware source used is
       transparent to the user and may change over the lifetime of the	timer.
       For  example,  if  the caller that created the timer were to change its
       processor binding or its processor set, the system may elect  to	 drive
       the timer with a hardware source	 that better reflects the new binding.
       Timers based on a clock_id of  CLOCK_HIGHRES  are  ideally  suited  for
       interval timers that have minimal jitter tolerence.

       Timers  are  not	 inherited by a child process across a fork(2) and are
       disarmed and deleted by a call  to  one	of  the	 exec  functions  (see
       exec(2)).

RETURN VALUES
       Upon  successful	 completion,  timer_create() returns 0 and updates the
       location referenced by timerid to a timer_t, which can be passed to the
       per-process  timer  calls.  If an error occurs, the function returns −1
       and sets errno to indicate the error. The value of timerid is undefined
       if an error occurs.

ERRORS
       The timer_create() function will fail if:

       EAGAIN
		 The system lacks sufficient signal queuing resources to honor
		 the request, or the calling process has already  created  all
		 of the timers it is allowed by the system.

       EINVAL
		 The specified clock ID, clock_id, is not defined.

       EPERM
		 The  specified	 clock	ID, clock_id, is CLOCK_HIGHRES and the
		 {PRIV_PROC_CLOCK_HIGHRES} is not asserted  in	the  effective
		 set of the calling process.

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

       ┌────────────────────┬─────────────────────────┐
       │ATTRIBUTE TYPE	    │ ATTRIBUTE VALUE	      │
       ├────────────────────┼─────────────────────────┤
       │Interface Stability │ Committed		      │
       ├────────────────────┼─────────────────────────┤
       │MT-Level	    │ MT-Safe with exceptions │
       ├────────────────────┼─────────────────────────┤
       │Standard	    │ See standards(5).	      │
       └────────────────────┴─────────────────────────┘

SEE ALSO
       exec(2),	  fork(2),   time(2),	clock_settime(3C),   signal(3C),  sig‐
       nal.h(3HEAD), timer_delete(3C), timer_settime(3C), attributes(5), priv‐
       ileges(5), standards(5)

				  Feb 5, 2008		      TIMER_CREATE(3C)
[top]

List of man pages available for SmartOS

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