.\" -*- coding: UTF-8 -*- .\" Copyright (c) 2009 Linux Foundation, written by Michael Kerrisk .\" .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH timer_settime 2 "30 martie 2023" "Pagini de manual de Linux 6.05.01" .SH NUME timer_settime, timer_gettime \- armează/dezarmează și extrag starea temporizatorului POSIX per\-proces .SH BIBLIOTECA Biblioteca de timp real (\fIlibrt\fP, \fI\-lrt\fP) .SH REZUMAT .nf \fB#include \fP .PP \fBint timer_gettime(timer_t \fP\fItimerid\fP\fB, struct itimerspec *\fP\fIcurr_value\fP\fB);\fP \fBint timer_settime(timer_t \fP\fItimerid\fP\fB, int \fP\fIflags\fP\fB,\fP \fB const struct itimerspec *restrict \fP\fInew_value\fP\fB,\fP \fB struct itimerspec *_Nullable restrict \fP\fIold_value\fP\fB);\fP .fi .PP .RS -4 Cerințe pentru macrocomenzi de testare a caracteristicilor pentru glibc (consultați \fBfeature_test_macros\fP(7)): .RE .PP \fBtimer_settime\fP(), \fBtimer_gettime\fP(): .nf _POSIX_C_SOURCE >= 199309L .fi .SH DESCRIERE \fBtimer_settime\fP() armează sau dezarmează temporizatorul identificat de \fItimerid\fP. Argumentul \fInew_value\fP este un indicator către o structură \fIitimerspec\fP care specifică noua valoare inițială și noul interval pentru temporizator. Structura \fIitimerspec\fP este descrisă în \fBitimerspec\fP(3type). .PP Fiecare dintre substructurile structurii \fIitimerspec\fP este o structură \fBtimespec\fP(3) care permite specificarea unei valori de timp în secunde și nanosecunde. Aceste valori de timp sunt măsurate în funcție de ceasul care a fost specificat atunci când temporizatorul a fost creat de \fBtimer_create\fP(2). .PP Dacă \fInew_value\->it_value\fP specifică o valoare diferită de zero (adică oricare dintre subcâmpuri este diferit de zero), atunci \fBtimer_settime\fP() armează (pornește) cronometrul, stabilind ca acesta să expire inițial la ora dată; (dacă temporizatorul a fost deja armat, atunci configurările anterioare sunt suprascrise). Dacă \fInew_value\->it_value\fP specifică o valoare zero (adică, ambele subcâmpuri sunt zero), atunci temporizatorul este dezarmat. .PP Câmpul \fInew_value\->it_interval\fP specifică perioada de temporizare, în secunde și nanosecunde. Dacă acest câmp este diferit de zero, atunci de fiecare dată când expiră un temporizator armat, temporizatorul este reîncărcat de la valoarea specificată în \fInew_value\->it_interval\fP. Dacă \fInew_value\->it_interval\fP specifică o valoare zero, atunci temporizatorul expiră doar o singură dată, la momentul specificat de \fIit_value\fP. .PP .\" By experiment: the overrun count is set correctly, for CLOCK_REALTIME. În mod implicit, ora inițială de expirare specificată în \fInew_value\->it_value\fP este interpretată în raport cu ora curentă a ceasului temporizatorului în momentul apelului. Acest lucru poate fi modificat prin specificarea \fBTIMER_ABSTIME\fP în \fIflags\fP, caz în care \fInew_value\->it_value\fP este interpretat ca o valoare absolută măsurată pe ceasul temporizatorului; adică, temporizatorul va expira atunci când valoarea ceasului atinge valoarea specificată de \fInew_value\->it_value\fP. Dacă timpul absolut specificat a trecut deja, atunci temporizatorul expiră imediat, iar numărul de depășire (a se vedea \fBtimer_getoverrun\fP(2)) va fi fixat corect. .PP .\" Similar remarks might apply with respect to process and thread CPU time .\" clocks, but these clocks are not currently (2.6.28) settable on Linux. Dacă valoarea ceasului \fBCLOCK_REALTIME\fP este ajustată în timp ce un temporizator absolut bazat pe acel ceas este armat, atunci expirarea temporizatorului va fi ajustată în mod corespunzător. Ajustările ceasului \fBCLOCK_REALTIME\fP nu au niciun efect asupra temporizatoarelor relative bazate pe acel ceas. .PP Dacă \fIold_value\fP nu este NULL, atunci acesta indică o memorie tampon care este utilizată pentru a returna intervalul anterior al temporizatorului (în \fIold_value\->it_interval\fP) și perioada de timp până la următoarea expirare a temporizatorului (în \fIold_value\->it_value\fP). .PP \fBtimer_gettime\fP() returnează timpul până la următoarea expirare și intervalul pentru temporizatorul specificat de \fItimerid\fP, în memoria tampon indicată de \fIcurr_value\fP. Timpul rămas până la următoarea expirare a temporizatorului este returnat în \fIcurr_value\->it_value\fP; aceasta este întotdeauna o valoare relativă, indiferent dacă la armarea temporizatorului a fost utilizat sau nu fanionul \fBTIMER_ABSTIME\fP. Dacă valoarea returnată în \fIcurr_value\->it_value\fP este zero, atunci temporizatorul este în prezent dezarmat. Intervalul temporizatorului este returnat în \fIcurr_value\->it_interval\fP. Dacă valoarea returnată în \fIcurr_value\->it_interval\fP este zero, atunci acesta este un temporizator „one\-shot” (folosit doar odată). .SH "VALOAREA RETURNATĂ" În caz de succes, \fBtimer_settime\fP() și \fBtimer_gettime\fP() returnează 0. În caz de eroare, se returnează \-1, iar \fIerrno\fP este configurată pentru a indica eroarea. .SH ERORI\-IEȘIRE Aceste funcții pot eșua cu următoarele erori: .TP \fBEFAULT\fP \fInew_value\fP, \fIold_value\fP sau \fIcurr_value\fP nu este un indicator valid. .TP \fBEINVAL\fP .\" FIXME . eventually: invalid value in flags \fItimerid\fP nu este valid. .PP \fBtimer_settime\fP() poate eșua cu următoarele erori: .TP \fBEINVAL\fP \fInew_value.it_value\fP este negativă; sau \fInew_value.it_value.tv_nsec\fP este negativă sau mai mare de 999,999,999. .SH STANDARDE POSIX.1\-2008. .SH ISTORIC Linux 2.6. POSIX.1\-2001. .SH EXEMPLE A se vedea \fBtimer_create\fP(2). .SH "CONSULTAȚI ȘI" \fBtimer_create\fP(2), \fBtimer_getoverrun\fP(2), \fBtimespec\fP(3), \fBtime\fP(7) .PP .SH TRADUCERE Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu . .PP Această traducere este documentație gratuită; citiți .UR https://www.gnu.org/licenses/gpl-3.0.html Licența publică generală GNU Versiunea 3 .UE sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE. .PP Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la .MT translation-team-ro@lists.sourceforge.net .ME .