Sortir de la méthode bloquante write de SerialPort

Signaler
Messages postés
5
Date d'inscription
dimanche 24 décembre 2000
Statut
Membre
Dernière intervention
21 août 2017
-
Messages postés
1860
Date d'inscription
lundi 28 novembre 2005
Statut
Modérateur
Dernière intervention
14 février 2015
-
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

Messages postés
1860
Date d'inscription
lundi 28 novembre 2005
Statut
Modérateur
Dernière intervention
14 février 2015
43
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 -