Provided by: manpages-ro-dev_4.21.0-2_all bug

NUME

       timer_getoverrun - obține numărul de depășiri al temporizatorului POSIX al unui proces

BIBLIOTECA

       Biblioteca de timp real (librt, -lrt)

REZUMAT

       #include <time.h>

       int timer_getoverrun(timer_t timerid);

   Cerințe   pentru   macrocomenzi  de  testare  a  caracteristicilor  pentru  glibc  (consultați
   feature_test_macros(7)):

       timer_getoverrun():
           _POSIX_C_SOURCE >= 199309L

DESCRIERE

       timer_getoverrun() returnează „numărul de depășiri” pentru temporizatorul la care se  face
       referire  prin timerid.  O aplicație poate utiliza numărul de depășiri pentru a calcula cu
       precizie numărul de expirări ale temporizatorului care  ar  fi  avut  loc  într-un  anumit
       interval   de   timp.    Depășirea  temporizatorului  poate  avea  loc  atât  la  primirea
       notificărilor de expirare  prin  intermediul  semnalelor  (SIGEV_SIGNAL),  cât  ș  i  prin
       intermediul firelor de execuție (SIGEV_THREAD).

       Atunci  când  notificările de expirare sunt transmise prin intermediul unui semnal, se pot
       produce depășiri după cum urmează.  Indiferent dacă se utilizează sau nu un semnal în timp
       real  pentru notificările de temporizare, sistemul pune în coadă cel mult un semnal pentru
       fiecare temporizator.  (Acesta este comportamentul specificat de POSIX.1.  Alternativa, de
       a  pune  la  coadă  un semnal pentru fiecare expirare a temporizatorului, ar putea duce cu
       ușurință la depășirea limitelor permise pentru semnalele puse la coadă  în  sistem).   Din
       cauza  întârzierilor  de  planificare  a sistemului sau pentru că semnalul poate fi blocat
       temporar, poate exista o întârziere între momentul în care  semnalul  de  notificare  este
       generat  și momentul în care este livrat (de exemplu, prins de un gestionar de semnal) sau
       acceptat (de exemplu, utilizând sigwaitinfo(2)).  În acest interval,  pot  avea  loc  alte
       expirări  ale  temporizatorului.   Numărătoarea depășirii temporizatorului este numărul de
       expirări suplimentare ale temporizatorului  care  au  avut  loc  între  momentul  în  care
       semnalul a fost generat și momentul în care a fost transmis sau acceptat.

       De  asemenea,  se  pot  produce  depășiri ale temporizatorului atunci când notificările de
       expirare sunt transmise prin invocarea  unui  fir,  deoarece  poate  exista  o  întârziere
       arbitrară  între  expirarea  temporizatorului  și  invocarea firului de notificare, iar în
       acest interval de întârziere pot apărea expirări suplimentare ale temporizatorului.

VALOAREA RETURNATĂ

       În caz de succes, timer_getoverrun() returnează numărul de depășiri  ale  temporizatorului
       specificat;  acest  număr  poate  fi  0  dacă nu au avut loc depășiri.  În caz de eșec, se
       returnează -1, iar errno este configurată pentru a indica eroarea.

ERORI

       EINVAL id-cronometru nu este un ID de cronometru valid.

VERSIUNI

       Acest apel de sistem este disponibil începând cu Linux 2.6.

STANDARDE

       POSIX.1-2001, POSIX.1-2008.

NOTE

       Atunci când notificările  de  temporizator  sunt  transmise  prin  intermediul  semnalelor
       (SIGEV_SIGNAL), pe Linux este posibilă și obținerea numărului de depășiri prin intermediul
       câmpului si_overrun din structura  siginfo_t  (a  se  vedea  sigaction(2)).   Acest  lucru
       permite  unei  aplicații să evite costurile suplimentare legate de efectuarea unui apel de
       sistem pentru a obține numărul de depășiri, dar este o extensie neportabilă la POSIX.1.

       POSIX.1 discută despre depășirea temporizatoarelor numai  în  contextul  notificărilor  de
       temporizatoare care utilizează semnale.

ERORI

       POSIX.1  specifică  faptul că, dacă numărul de depășiri ale temporizatorului este egal sau
       mai mare decât un maxim definit de implementare, DELAYTIMER_MAX, atunci timer_getoverrun()
       trebuie să returneze DELAYTIMER_MAX.  Cu toate acestea, înainte de Linux 4.19, în cazul în
       care valoarea de depășire a temporizatorului depășește numărul întreg maxim reprezentabil,
       contorul se repornește, pornind încă o dată de la valori scăzute.  Începând cu Linux 4.19,
       timer_getoverrun() returnează DELAYTIMER_MAX (definit ca INT_MAX în <limits.h>)  în  acest
       caz (iar valoarea de depășire este readusă la 0).

EXEMPLE

       A se vedea timer_create(2).

CONSULTAȚI ȘI

       clock_gettime(2),     sigaction(2),    signalfd(2),    sigwaitinfo(2),    timer_create(2),
       timer_delete(2), timer_settime(2), signal(7), time(7)

TRADUCERE

       Traducerea în limba  română  a  acestui  manual  a  fost  creată  de  Remus-Gabriel  Chelu
       <remusgabriel.chelu@disroot.org>

       Această  traducere  este  documentație  gratuită;  citiți  Licența  publică  generală  GNU
       Versiunea 3  ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩  sau  o  versiune  ulterioară  cu
       privire la condiții privind drepturile de autor.  NU se asumă Nicio RESPONSABILITATE.

       Dacă  găsiți  erori  în  traducerea  acestui  manual,  vă  rugăm să trimiteți un e-mail la
       ⟨translation-team-ro@lists.sourceforge.net⟩.