Bonjour à tous,
J’ai besoin de vos conseils pour arrêter un thread qui a des fonctions bloquantes. Voici le partie principale du thread :
Comment puis-je arrêter ce thread quand l’utilisateur active un bouton stop sachant que la fonction read() est bloquante et que je ne sais pas quand je reçois les données?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 while var.stop != True : # on lit 1 octet que l'on passe en decimal r = ord(ser.read()) if r == 0xFF: # si c'est le debut de trame print "Debut Trame" octet1 = ord(ser.read()) print octet1 octet2 = ord(ser.read()) print octet2 octet3 = ord(ser.read()) print octet3 octet4 = ord(ser.read()) print octet4 octet5 = ord(ser.read()) print octet5 octet6 = ord(ser.read()) print octet6 octet7 = ord(ser.read()) print octet7 #traitement des octets
P.S. : j’utilise le module pyserial
Je vous remercie d’avance
Cordialement
Sebome
Partager