Pause d'environ 1.5 ms

Le
Bertrand Lenoir-Welter
Bonjour

Je cherche un timer capable de faire une pause de 1 à 2 ms (on va dire
1.5 ms à +/- 0.5 ms). GetTickCount() avançant par saccades de 1/64ème de
seconde, ça ne va pas. Les commentaires sur Sleep() disent que sa
granulosité est la même. Enfin, QueryPerformanceCounter() ne semble pas
marcher sur 98/ME et malheureusement j'ai besoin de conserver cette
compatibilité.

En attendant mieux, j'ai bricolé une formule mathématique longue que
j'appelle N fois durant 100 ms avec GetTickCount(), puis je divise N par
67 et ça me donne le nombre de fois que je dois appeler ma formule pour
égrener à peu près 1.5 ms. Mais ça me paraît un peu trop du bricolage et
je préférerais un truc plus canonique. Quelqu'un aurait une piste ?

Merci d'avance
Questions / Réponses high-tech
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Serge Paccalin
Le #22629011
Le Thu, 30 Sep 2010 09:55:54 +0200, Bertrand Lenoir-Welter a écrit
(dans  dans fr.comp.os.ms-windows.programmation) :

Bonjour

Je cherche un timer capable de faire une pause de 1 à 2 ms (on va dire
1.5 ms à +/- 0.5 ms). GetTickCount() avançant par saccades de 1/64ème de
seconde, ça ne va pas. Les commentaires sur Sleep() disent que sa
granulosité est la même. Enfin, QueryPerformanceCounter() ne semble pas
marcher sur 98/ME et malheureusement j'ai besoin de conserver cette
compatibilité.



Je ne vois guère que les fonctions multimédia, alors.

#include
timeBeginPeriod(1);

boucle de timeGetTime();

timeEndPeriod();

--
___________
_/ _ _`_`_`_) Serge PACCALIN -- sp ad mailclub.net
_L_) Il faut donc que les hommes commencent
-'(__) par n'être pas fanatiques pour mériter
_/___(_) la tolérance. -- Voltaire, 1763
Bertrand Lenoir-Welter
Le #22630031
#include timeBeginPeriod(1);
boucle de timeGetTime();
timeEndPeriod();




Ok, je vais creuser de ce côté. Merci Serge.
Publicité
Poster une réponse
Anonyme