Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Pause d'environ 1.5 ms

2 réponses
Avatar
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

2 réponses

Avatar
Serge Paccalin
Le Thu, 30 Sep 2010 09:55:54 +0200, Bertrand Lenoir-Welter a écrit
(dans <news:4ca44247$0$32457$, posté
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 <mmsystem.h>

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
Avatar
Bertrand Lenoir-Welter
#include<mmsystem.h>
timeBeginPeriod(1);
boucle de timeGetTime();
timeEndPeriod();




Ok, je vais creuser de ce côté. Merci Serge.