Un sleep qui fige l'instruction précédente [Résolu]

- - Dernière réponse : jlen100
Messages postés
1651
Date d'inscription
samedi 10 juillet 2004
Dernière intervention
25 juillet 2014
- 30 janv. 2006 à 23:19
Salut à tous,

Voila je réalise une source dans laquelle j'ai un composant qui controle un port USB. Je l'active par une instruction et doit traiter immédiatement le signal par une seconde instruction. Manque de bol le périphérique USB met du temps à se lancer ce qui fait que la seconde instruction débute avant que le périph fonctionne.

Je me suis dis no problemo un petit sleep(5000); et le tour est joué.

Bien non, ca gele le lancement du périphérique et la seconde. Ce qui fait que le sleep ne change rien à mon probleme de départ.

Quelqu'un connait il l'explication ??
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
Messages postés
1651
Date d'inscription
samedi 10 juillet 2004
Dernière intervention
25 juillet 2014
7
3
Merci
salut,

tant que l'application attend elle bloque les processus. il faut redonner la main à windows

pour cela utilises :

Application.ProcessMessages;

l'aide DELPHI donne

Description



Appelez ProcessMessages pour permettre à l'application de traiter les
messages actuellement dans la file d'attente des messages.
ProcessMessages parcourt la boucle des messages Windows jusqu'à ce
qu'elle soit vide, puis rend le contrôle à l'application.



Remarque : L'oubli du traitement des messages
n'affecte que l'application qui appelle ProcessMessages mais pas les
autres applications. Dans des opérations longues, des appels réguliers
de ProcessMessages permettent à l'application de répondre aux messages
d'affichage ou autres messages.



@+

jlen

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 89 internautes nous ont dit merci ce mois-ci

Commenter la réponse de jlen100
Messages postés
1651
Date d'inscription
samedi 10 juillet 2004
Dernière intervention
25 juillet 2014
7
3
Merci
bon je n'avais pas tout lu

il faudrait en plus que tu testes que ton port est prêt avant de lancer l'autre instruction

@+

jlen;

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 89 internautes nous ont dit merci ce mois-ci

Commenter la réponse de jlen100

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.