15 votes

Existe-t-il une méthode standard pour convertir une structure timeval en une structure timespec ?

struct timeval représente un instant dans le temps avec deux membres, tv_sec (secondes) et tv_usec (microsecondes). Dans cette représentation, tv_usec n'est pas en soi un temps absolu, mais un décalage d'une sous seconde par rapport à tv_sec .

struct timespec fonctionne de la même manière, sauf qu'au lieu de microsecondes, il s'agit de décalage ( tv_nsec ) est stockée en unités de nanosecondes.

La question est de savoir s'il existe une méthode standard de conversion entre ces deux types de données.

17voto

kdgregory Points 21849

Regarder ce document Je pense qu'en multipliant tv_usec par 1000 est suffisante pour obtenir tv_nsec .

Ce qui est plus important, je pense, c'est la source des différentes structures : elles pourraient être remplies par des horloges différentes.

17voto

CommanderHK Points 79

En sys/time.h il existe deux macros qui font ce que vous voulez :

TIMEVAL_TO_TIMESPEC(X, Y)

y

TIMESPEC_TO_TIMEVAL(X, Y)

Voir les documents ici : http://www.daemon-systems.org/man/TIMEVAL_TO_TIMESPEC.3.html

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X