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

Utilisateur anonyme - 30 janv. 2006 à 22:49 - Dernière réponse : jlen100 1651 Messages postés samedi 10 juillet 2004Date d'inscription 25 juillet 2014 Dernière intervention
- 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
jlen100 1651 Messages postés samedi 10 juillet 2004Date d'inscription 25 juillet 2014 Dernière intervention - 30 janv. 2006 à 23:15
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

Merci jlen100 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 69 internautes ce mois-ci

Commenter la réponse de jlen100
Meilleure réponse
jlen100 1651 Messages postés samedi 10 juillet 2004Date d'inscription 25 juillet 2014 Dernière intervention - 30 janv. 2006 à 23:19
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;

Merci jlen100 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 69 internautes 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.