Sortir de la méthode bloquante write de SerialPort

DaniMelo59 Messages postés 5 Date d'inscription dimanche 24 décembre 2000 Statut Membre Dernière intervention 21 août 2017 - 20 avril 2009 à 11:34
krimog Messages postés 1860 Date d'inscription lundi 28 novembre 2005 Statut Membre Dernière intervention 14 février 2015 - 20 avril 2009 à 14:08
Bonjour,

A partir d'une form, je démarre une émission d'un message sur un port COM via SerialPort.
J'instancie un thread qui s'occupe d'emmettre.
SerialPort.Write() est une fonction bloquante.

Lorsque je désire arrêter l'émission, je dois aborder le thread car la méthode Write peut prendre 2 minutes selon la taille du message. En plus, j'émets avec de faibles vitesses.
Cependant, même si le thread est abordée, je continue d'émettre.

comment sortir d'une méthode bloquante ?
Comment arrêter de transmettre ?
j'ai mis breakState à true mais ça ne met que l'émission en pause. je ne sors pas pour autant du write.

Avez-vous une idée ?

merci

1 réponse

krimog Messages postés 1860 Date d'inscription lundi 28 novembre 2005 Statut Membre Dernière intervention 14 février 2015 49
20 avril 2009 à 14:08
Salut

Je ne connais pas cette classe, mais faire un SerialPort.Close(); ne pourrait pas résoudre ton problème ?

Krimog : while (!(succeed = try())) ;
- Quand le règlement tu respecteras, ravis de te répondre on sera -
0
Rejoignez-nous