Utilisation d'un while(...) dans l'attente de réception sur port série

cs_arb Messages postés 40 Date d'inscription lundi 18 février 2002 Statut Membre Dernière intervention 5 novembre 2012 - 19 mars 2010 à 13:57
cs_arb Messages postés 40 Date d'inscription lundi 18 février 2002 Statut Membre Dernière intervention 5 novembre 2012 - 22 mars 2010 à 17:45
Bonjour,

J'ai une appli en C# qui échange des données avec un processeur via liaison série. Ayant beaucoup de données à transférer, j'envoi un premier paquet d'infos et j'attends une réponse avant d'envoyer la suite.
J'ai donc dans ma fonction d'envoi quelquechose du genre :
while(TrameReponseAck == 0);

et dans l'interruption qui gère le port série, TrameReponseAck passe à 1 quand j'ai reçu.

Tout se passe bien quand je fais le test en debug, par contre lorsque j'installe l'appli et que je l'execute, je reste bloqué sur le while.....

Avez-vous une idée pour éviter ce problème, idée, conseil?

D'avance merci

2 réponses

krimog Messages postés 1860 Date d'inscription lundi 28 novembre 2005 Statut Membre Dernière intervention 14 février 2015 49
22 mars 2010 à 16:07
Salut

Mets ton while dans un thread séparé, que tu peux arrêter depuis ton thread principal.

Krimog : while (!(succeed = try())) ;
- Nous ne sommes pas des décodeurs ambulants. Le style SMS est prohibé. -
0
cs_arb Messages postés 40 Date d'inscription lundi 18 février 2002 Statut Membre Dernière intervention 5 novembre 2012 4
22 mars 2010 à 17:45
Euh je ne vois pas trop comment faire, car mon scheduler pour l'émission est dans une même fonction et séquentiel? il faudrait en sortir?
0
Rejoignez-nous