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>
#include <sys/timers.h>
#include <sys/types.h>
int TimerType;
struct timestruc_t *Resolution, *MaximumValue;
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 .
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:
|
| 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. |