Mastersam
Messages postés116Date d'inscriptiondimanche 26 septembre 2004StatutMembreDernière intervention13 février 2008
-
10 nov. 2005 à 21:10
Mastersam
Messages postés116Date d'inscriptiondimanche 26 septembre 2004StatutMembreDernière intervention13 février 2008
-
11 nov. 2005 à 22:44
Bonjour j'ai besoin dans mon programme sur windows en C développé sous dev-cpp de produire un évènement qui se déclenche à intervalle régulier de 23ms, qu'il ne se déclenche pas avant ces 23 mais qu'il en soit le plus proche possible.
J'ai essayé de "réguler" un timer pour tenir compte de la vitesse d'execution du PC du genre:
if(lastsenttrame-lastcalcul+attente<23)attente++;else attente--;
SetTimer(hwnd, IDT_TIMERDMX, attente, (TIMERPROC) NULL);
mais je suis toujours largement au dessus des 23ms .
Je voudrais trouver autre chose que l'utilisation d'un timer dans une fenètre qui est trop dépendent de l'activité du PC (Retard dans le traitement du message).
Poufine
Messages postés5Date d'inscriptionmercredi 20 avril 2005StatutMembreDernière intervention10 novembre 2005 10 nov. 2005 à 22:58
//bon voila moi j'utilise CWnd::setTimer dans un de mes programmes cpp ,mais ta fonction settimer semble à peu pres la meme
//voila comment je l'utilise
//je declare d'abord cette fonction:
Mastersam
Messages postés116Date d'inscriptiondimanche 26 septembre 2004StatutMembreDernière intervention13 février 2008 11 nov. 2005 à 22:44
Bon j'ai fait la solution de Brunews car celle de poufine était trop proche de la mienne j'avais besoin de traiter l'execution en dehors du programme et indépendemment d'une pile de message (d'ou le thread). J'ai cependant préféré un deuxième while(1) à la place du goto qui fait souvent dresser les cheveux de certains profs.