Loading

NOM

       timer_getoverrun  -  Obtenir  le nombre de dépassements d’une minuterie
       POSIX d’un processus

SYNOPSIS

       #include <time.h>

       int timer_getoverrun(timer_t timerid);

       Effectuez l’édition des liens avec l’option -lrt.

   Exigences de  macros  de  test  de  fonctionnalités  pour  la  glibc  (voir
   feature_test_macros(7)) :

       timer_getoverrun() : _POSIX_C_SOURCE >= 199309

       timer_getoverrun()   renvoie   le  compteur  de  dépassements  pour  la
       minuterie indiquée  par  timerid.  Une  application  peut  utiliser  le
       compteur  de  dépassements  pour  calculer  avec  précision  le  nombre
       d’expiration qui se seraient écoulée dans un intervalle de temps donné.
       Les  dépassements  de  minuterie  peuvent survenir lors de la réception
       d’une notification par  un  signal  (SIGEV_SIGNAL)  ou  par  un  thread
       (SIGEV_THREAD).

       Quand  les  notifications d’expiration sont fournies par un signal, les
       dépassements peuvent survenir de cette façon. Qu’un signal  temps  réel
       soit  utilisé ou non pour les notifications de la minuterie, le système
       empile au plus un signal par  minuterie.  (Il  s’agit  du  comportement
       spécifié par POSIX.1-2001. L’alternative, empiler un signal pour chaque
       expiration de  minuterie,  pourrait  facilement  dépasser  les  limites
       permises pour l’empilement de signaux sur le système.) Pour des raisons
       de délais d’ordonnancement, ou parce  que  le  signal  peut  avoir  été
       bloqué  pendant  un moment, il peut y avoir un délai entre le moment ou
       le signal de notification est produit et le moment ou il est reçu  (par
       le  gestionnaire  de  signal)  ou  accepté  (par  exemple  en utilisant
       sigwaitinfo(2)). Dans cet intervalle, d’autres expirations de minuterie
       peuvent   survenir.   Le  compteur  de  dépassements  de  la  minuterie
       correspond  au  nombre  d’expirations  supplémentaires  qui   se   sont
       produites entre le moment où le signal a été produit et le moment ou il
       a été reçu ou accepté.

       Les dépassements de minuterie peuvent aussi  se  produire  lorsque  les
       notifications  d’expirations  sont  fournies  par  un appel à un thread
       puisqu’il peut y avoir un délai arbitraire  entre  l’expiration  de  la
       minuterie  et  l’exécution  du  thread  de  notification  et  que  dans
       l’intervalle de ce délai, d’autres expirations de minuterie peuvent  se
       produire.

VALEUR RENVOYÉE

       S’il  réussit,  timer_getoverrun() renvoie le compteur d’expirations de
       la minuterie indiquée ; ce compteur peut valoir 0 si aucune  expiration
       n’a  eu lieu. S’il échoue, il renvoie -1 et écrit errno en conséquence.

ERREURS

       EINVAL timerid n’est pas un identifiant de minuterie valable.

VERSIONS

       Cet appel système est disponible depuis Linux 2.6.

CONFORMITÉ

       POSIX.1-2001

NOTES

       Lorsque les notifications de minuterie sont fournies  par  des  signaux
       (SIGEV_SIGNAL),  il  est  possible  sous Linux d’obtenir le compteur de
       dépassements  par  le  champ  si_overrun  de  la  structure   siginfo_t
       (consultez  sigaction(2)).  Ce  permet  à  une  application d’éviter le
       surcoût d’un appel système pour obtenir le  compteur  de  dépassements,
       mais est une extension à POSIX.1-2001 non portable.

       POSIX.1-2001  ne  mentionne  les dépassements de minuteries que dans le
       contexte de notifications de minuteries par des signaux.

BOGUES

       POSIX.1-2001  spécifie  que  si  le  compteur  de  dépassements  de  la
       minuterie  est supérieur ou égal au maximum défini par l’implémentation
       (DELAYTIMER_MAX),    alors    timer_getoverrun()    devrait    renvoyer
       DELAYTIMER_MAX. Cependant Linux n’implémente pas cette fonctionnalité :
       à la place, si le nombre de dépassements dépasse l’entier le plus grand
       représentable, le compteur redémarre à partir des petites valeurs.

EXEMPLE

       Consultez timer_create(2).

VOIR AUSSI

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

COLOPHON

       Cette page fait partie de  la  publication  3.23  du  projet  man-pages
       Linux.  Une description du projet et des instructions pour signaler des
       anomalies      peuvent      être       trouvées       à       l’adresse
       http://www.kernel.org/doc/man-pages/.

TRADUCTION

       Cette  page  de  manuel  a  été  traduite  et est maintenue par Nicolas
       François <nicolas.francois@centraliens.net> et l’équipe francophone  de
       traduction de Debian.

       Veuillez   signaler   toute   erreur   de   traduction  en  écrivant  à
       <debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
       paquet manpages-fr.

       Vous  pouvez  toujours avoir accès à la version anglaise de ce document
       en utilisant la commande « man -L C <section> <page_de_man> ».