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 ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
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
Le Thu, 30 Sep 2010 09:55:54 +0200, Bertrand Lenoir-Welter a écrit
(dans <news:4ca44247$0$32457$ba4acef3@reader.news.orange.fr>, 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
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
Bertrand Lenoir-Welter
#include<mmsystem.h> timeBeginPeriod(1); boucle de timeGetTime(); timeEndPeriod();
Ok, je vais creuser de ce côté. Merci Serge.
#include<mmsystem.h>
timeBeginPeriod(1);
boucle de timeGetTime();
timeEndPeriod();