Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2082 connectés 

 


Dernière réponse
Sujet : [Visual C++] Pause et reveil
mystereetbouledegomme Le probleme c'est que pour le clavier j'utilise la fonction glutSpecialFunc(processSpecialKeys); et processSpecialKeys doit etre du type vois si je ne me trompe alors je ne sais pas comment utiliser les thread car d'apres ce post
http://forum.hardware.fr/forum2.ph [...] ic=&trash=
 
la fonction doit etre de type UINT ... Qulequ'un a une idee? Merci

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
mystereetbouledegomme Le probleme c'est que pour le clavier j'utilise la fonction glutSpecialFunc(processSpecialKeys); et processSpecialKeys doit etre du type vois si je ne me trompe alors je ne sais pas comment utiliser les thread car d'apres ce post
http://forum.hardware.fr/forum2.ph [...] ic=&trash=
 
la fonction doit etre de type UINT ... Qulequ'un a une idee? Merci
cycojesus avec GLUT tu peux récupérer le temps passé depuis le lancement (en ms) (GLUT_ELAPSED_TIME ou un truc dans le genre). après, dans ton idle(), à chaque fois que T ms sont passées, tu bouge ton objet.
 
J'utilise un truc dans le genre pour calc les fps (toute les sec on regarde combien d'images on à afficher => fps.
LetoII t'as une fonction du style getSystemTime ou qqc dans ce style (me souvient pas bien) par contre c un peux chaud ça renvoie un entier sur 64 bits (ils comptes le nombre d'intervals de 100 nanosec depuis le premier janviers 1601 je crois :) )
Si non pour les thred tu dois passer l'adresse d'une fonction qui répond à un certain proto (regarde dans la doc)
mystereetbouledegomme Recuperer le temps systeme me parait interressant(comment qu'on fait). Tu aurais pas un guide sur les threads car ca me parait different des fork linux je vois pas tres bien comment preciser ou preciser quel code doit etre execute ds le second thread.
Encore merci et je hais l'API windows
LetoII Tu prend le temps system et tu fais une boucle qui attend que tant de sec se soient écoulées
H4dd3R Oui.. Ton thread de coordonnées z peut très bien être un timer (qui n´est rien d´autre qu´un thread avec des Sleep() mais tu dois pas t´en occuper)..
 
PostMessage() sinon pour signaler à ton thread principal.
LetoII Ouai je fairai comme ça aussi
mystereetbouledegomme Moui mais j'avoue que les messages entre thread je sais pas comment faire mais je peux chercher. Deplacement lent = sleep ? Ou tu vois une autre maniere?
H4dd3R Je crois que ton approche est pas la bonne..
 
Tu prends un thread qui s´occupe du déplacement lent.. Il cacule la profondeur et qd il estime un redraw nécessaire il envoie un message au thread principal qui doit s´en charger..
 
Le thread principal il se contente de faire du process message.. Messages provenant du clavier ou de l´éloignement z, et qui déclanchent un redraw.. :)
 
C une solution si ton app n´a pas le droit de prendre tt le temps cpu.. Si elle a le droit (style démo ;) ), c plus simple!!

 

[jfdsdjhfuetppo]--Message édité par H4dd3R--[/jfdsdjhfuetppo]

mystereetbouledegomme En fait j'utilise glut et opengl pour afficher des formes. je souhaiterais que ces formes avancent vers le 'fond' de l'ecran. Mais je veux le faire avec une certaine lenteur. Donc le truc devrait avancer de une unite toutes les secondes par exemple mais la forme doit tjs pouvoir etre deplace sur les axes x et y pdt le temps ou le processus attend(cad entre le moment ou la forme vient de bouger et son prochain mouvement).
Quelqu un a une idee merci.
LetoII tout dépend de ce que tu appel un très cour instant....
 
Moi je fairais comme ça: je crérai 2 thread; un qui crée un mutex, et qui écoute les message en provenance du clavier, l'autre qui attend pendant un certain temps qu'il puisse prendre possession du mutex. Si le prmier thread reçoit un événement clavier il relache le mutex.
 
Fonctions de l'API: CreateMutex,OpenMutex,WaitForSingleObject,ReleaseMutex,CreateThread
mystereetbouledegomme Voila je souhaiterais que mon processus soit en pause pdt un tres court instant mais qu'il puisse etre reveille soit apres ce cours instant soit parce que l'utilisateur a appuyer sur une touche...  
Merci

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)