[QUES] : timer en millisecondes

Le
Sebastien
Bonjour a tous,

je cherche a savoir comment faire pour avoir une fonction en
millisecondes. Je code sur un Linux. <unistd.h> (header non
standard, je c) me propose la fonction sleep mais c'est en
secondes.

A+

Sebastien
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Régis Troadec
Le #583105
Salut,

"Sebastien"
Bonjour a tous,

je cherche a savoir comment faire pour avoir une fonction en
millisecondes. Je code sur un Linux. standard, je c) me propose la fonction sleep mais c'est en
secondes.


si tu veux un timer en microsecondes, je te conseille de jeter
un oeil aux fonctions setitimer() et getitimer() de l'API POSIX,
ainsi qu'aux structures timerval et itimerval qui vont avec.

http://www.opengroup.org/onlinepubs/007904975/functions/setitimer.html

A coup de man sous linux tu devrais aussi avoir des infos

Regis

A+

Sebastien



gregg
Le #583104
Sebastien wrote:
Bonjour a tous,

je cherche a savoir comment faire pour avoir une fonction en
millisecondes. Je code sur un Linux. standard, je c) me propose la fonction sleep mais c'est en
secondes.


Bonsoir,

Ce n'est pas possible en C-ISO.
Par contre, en restant Posix, tu peux utiliser gettimeofday (dans
sys/time.h)
Le second champ de la structure timeval te donne des microsecondes,
qu'il est facile de convertir en millisecondes.

gregg

Olivier Saladin
Le #583100
Cà dépend de ce que doit faire la fonction, si c'est pour dater un
évènement, gettimeofday est ton ami, si tu veux faire une pause de quelques
millisecondes, il faut faire attention car linux n'étant pas temps réel, tu
n'est pas assuré d'avoir la précision demandée, néamoins pour faire une
telle pause j'utilise nanosleep, (#include c'est POSIX ?


---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.613 / Virus Database: 392 - Release Date: 04/03/2004
Emmanuel Delahaye
Le #582858
In 'fr.comp.lang.c', Sebastien
je cherche a savoir comment faire pour avoir une fonction en
millisecondes. Je code sur un Linux. standard, je c) me propose la fonction sleep mais c'est en
secondes.


Linux étant largement compatible avec Unix, tu auras une réponse plus ciblée
sur le forum de développement Unix :

news:fr.comp.os.unix

(de mémoire, gettimeofday())

--
-ed- [remove YOURBRA before answering me]
The C-language FAQ: http://www.eskimo.com/~scs/C-faq/top.html
C-reference: http://www.dinkumware.com/manuals/reader.aspx?lib=cpp
FAQ de f.c.l.c : http://www.isty-info.uvsq.fr/~rumeau/fclc/

kilobug
Le #582856

Bonjour a tous,
je cherche a savoir comment faire pour avoir une fonction en
millisecondes. Je code sur un Linux. standard, je c) me propose la fonction sleep mais c'est en
secondes.


nanosleep dans time.h, compatible POSIX mais pas C ISO (donc,
disponible sur tous les "unix-like" mais pas forcément ailleurs).

--
Gael Le Mignot "Kilobug" - - http://kilobug.free.fr
GSM : 06.71.47.18.22 (in France) ICQ UIN : 7299959
Fingerprint : 1F2C 9804 7505 79DF 95E6 7323 B66B F67B 7103 C5DA

Member of HurdFr: http://hurdfr.org - The GNU Hurd: http://hurd.gnu.org

Kevin Barbier
Le #582855
Sebastien wrote:
je cherche a savoir comment faire pour avoir une fonction en
millisecondes. Je code sur un Linux. standard, je c) me propose la fonction sleep mais c'est en
secondes.


<hs>
usleep() fonctionne comme sleep, mais prend des micro-secondes en
argument. cf -> 'man usleep'.
</hs>

Publicité
Poster une réponse
Anonyme