gettimer, settimer, restimer, stime o time Subroutine

Finalidad

Obtiene o establece el valor correcto para el temporizador especificado de todo el sistema.

Biblioteca

Biblioteca C estándar (libc.a)

Sintaxis

#include <sys/time.h>
#include <sys/types.h>
int gettimer( TimerType,  Value)
timer_t TimerType;
struct timestruc_t * Value;
#include <sys/timers.h>
#include <sys/types.h>
int gettimer( TimerType,  Value)
timer_t TimerType;
struct itimerspec * Value;
int settimer(TimerType TimePointer)
int TimerType;
const struct timestruc_t *TimePointer;
int restimer(TimerType Resolution MaximumValue)
int TimerType;
struct timestruc_t *Resolution, *MaximumValue;
int stime( Tp)
long *Tp;
#include <sys/types.h>
time_t time(Tp)
time_t *Tp

Descripción

La subrutina settimer se utiliza para establecer el valor actual del parámetro TimePointer para el temporizador de todo el sistema, especificado por el parámetro TimerType .

Cuando se utiliza la subrutina gettimer con el prototipo de función en sys/timers.h, excepto para los parámetros, la subrutina gettimer es idéntica a la subrutina getinterval . Se recomienda utilizar la subrutina getinterval , a menos que la subrutina gettimer sea necesaria para una aplicación compatible con estándares. La descripción y la semántica de la subrutina gettimer están sujetas a cambios entre releases, cambios pendientes en el estándar de borrador en el que se basa la descripción de subrutina gettimer actual.

Cuando se utiliza la subrutina gettimer con el prototipo de función en /sys/timers.h, la subrutina gettimer devuelve una estructura itimerspec al puntero especificado por el parámetro Valor . El miembro it_value de la estructura itimerspec representa la cantidad de tiempo del intervalo actual antes de que caduque el temporizador (especificado por el parámetro TimerType ) o un intervalo cero si el temporizador está inhabilitado. Los miembros del puntero especificado por el parámetro Valor están sujetos a la resolución del temporizador.

Cuando se utiliza la subrutina gettimer con el prototipo de función en sys/time.h, la subrutina gettimer devuelve una estructura timestruc al puntero especificado por el parámetro Valor . Esta estructura contiene el valor actual del temporizador de todo el sistema especificado por el parámetro Valor .

La subrutina restimer puede obtener la resolución de cualquier temporizador. El parámetro Resolución representa la resolución del temporizador especificado. El parámetro MaximumValue representa el valor de temporizador máximo posible. El valor de estos parámetros es la resolución aceptada por la subrutina settimer .

Nota: Si un usuario sin privilegios intenta enviar un temporizador de granularidad fina (es decir, una solicitud de temporizador de menos de 10 milisegundos), la solicitud de temporizador se eleva a 10 milisegundos.

La subrutina time devuelve el tiempo en segundos desde la Época (es decir, 00:00:00 GMT, 1 de enero de 1970). El parámetro Tp apunta a un área donde también se almacena el valor de retorno. Si el parámetro Tp es un puntero nulo, no se almacena ningún valor.

La subrutina stime está implementada para proporcionar compatibilidad con sistemas AIX®, AT&T System V y BSD antiguos. Llama a la subrutina settimer utilizando el temporizador TIMEOFDAY .

Parámetros

Elemento Descripción
VALOR Apunta a una estructura de tipo itimerspec.
TimerType Especifica el temporizador de todo el sistema:
HORAOFDAY
(Temporizador de reloj del sistemaPOSIX ) Este temporizador representa el reloj de hora del día del sistema. Para este temporizador, los valores devueltos por la subrutina gettimer y especificados por la subrutina settimer representan la cantidad de tiempo desde las 00:00:00 GMT del 1 de enero de 1970.
TimePointer Apunta a una estructura de tipo struct timestruc_t.
Resolución Resolución de un temporizador especificado.
MaximumValue El valor de temporizador máximo posible.
Tp Apunta a una estructura que contiene el tiempo en segundos.

Valores de retorno

Las subrutinas gettimer, settimer, restimery stime devuelven un valor de 0 (cero) si la llamada es satisfactoria. Un valor de retorno de -1 indica que se ha producido un error, y se establece errno.

La subrutina time devuelve el valor de tiempo en segundos desde Epoch. De lo contrario, se devuelve un valor de ((time_t)-1) y la variable global errno se establece para indicar el error.

Códigos de error

Si se produce un error en la subrutina gettimer, settimer, restimero stime , se recibe un valor de retorno de-1 y la variable global errno se establece en uno de los siguientes códigos de error:

Elemento Descripción
EINVAL El parámetro TimerType no especifica un temporizador de todo el sistema conocido, o el parámetro TimePointer de la subrutina settimer está fuera del rango para el temporizador de todo el sistema especificado.
EFAULT Una memoria referenciada de dirección de parámetro que no era válida.
EIO Se ha producido un error al acceder al dispositivo de temporizador.
EPERM El proceso solicitante no tiene el privilegio adecuado para establecer el temporizador especificado.

Si la subrutina de tiempo no tiene éxito, se recibe un valor de retorno de -1 y la variable global errno se establece en lo siguiente:

Elemento Descripción
EFAULT Una memoria referenciada de dirección de parámetro que no era válida.