 |
Index for Section 3 |
|
 |
Alphabetical listing for T |
|
 |
Bottom of page |
|
timer_create(3)
NAME
timer_create - Allocate a per-process timer
SYNOPSIS
#include <signal.h>
#include <time.h>
int timer_create (
clockid_t clock_id,
struct sigevent *evp,
timer_t *timerid );
PARAMETERS
clock_id
The type of clock on which the timer is based. The CLOCK_REALTIME
clock is supported.
*evp A pointer to a sigevent structure, which defines the signal sent to
the process on timer expiration.
*timerid
A pointer to the timer ID returned by the call to the timer_create
function.
DESCRIPTION
The timer_create function allocates a per-process timer using the specified
clock as the timing base. The timer_create function returns timer_id, which
is used to identify the timer in timer requests. The timer ID is unique
within the calling process until the timer is deleted. The timer is unarmed
when first returned from a call to timer_create. To arm the timer, use the
timer_settime function.
The evp argument, if non-NULL, points to a sigevent structure, which
defines the asynchronous notification that will occur when the timer
expires. If the sigev_notify member of evp is SIGEV_SIGNAL, the structure
must contain the signal number and data value to send to the process when
the timer expires. If the sigev_notify member is SIGEV_NONE, no
notification will be sent.
SIGALRM is the default signal for CLOCK_REALTIME if the evp argument is
NULL.
The maximum number of timers supported per process (TIMER_MAX) is defined
in the <sys/rt_limits.h> header file, which is indirectly included through
<time.h>.
Timers are not inherited across fork calls. An exec call will disarm and
delete a timer.
RETURN VALUES
Upon successful completion, a value of 0 is returned. The timer_create
function also returns, in timerid, a pointer to the timer ID that has been
created.
An unsuccessful call returns -1, and errno is set to indicate the error
type.
ERRORS
The timer_create function fails under the following conditions:
[EAGAIN] The system lacks sufficient signal queuing resources to
honor the request.
The calling process has already created all of the timers it
is allowed.
[EINVAL] The specified clock ID is not defined.
RELATED INFORMATION
Functions: clock_getres(3), clock_gettime(3), clock_settime(3),
timer_delete(3), timer_gettime(3), timer_settime(3)
 |
Index for Section 3 |
|
 |
Alphabetical listing for T |
|
 |
Top of page |
|