Salut à tous,
Sujet maintes fois traité mais je n'arrive pas à trouver mon bonheur :/ ... Je souhaiterais utiliser une variable (ici une Queue) dans mon thread secondaire (que j'utilise pour me connecter à un serveur) et mon thread principal (que j'utilise pour asservir une arduino)
(ça sera plus clair avec le code :p )
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 # -*- coding: utf8 -*- import serial import time import connection import EnvoiOrdre import server from threading import Thread import sys import random from Queue import Queue queue_serveur=Queue(maxsize=10) class thread_serveur(Thread): """Thread chargé simplement d'afficher une lettre dans la console.""" def __init__(self, httpd): Thread.__init__(self) self.httpd=httpd def run(self): """Code à exécuter pendant l'exécution du thread.""" print("ok") queue_serveur.put("data reçu du serveur") self.httpd.serve_forever() if __name__ == "__main__": #arduino=connection.usb() httpd=server.init_serveur() print("test") t_serveur=thread_serveur(httpd) t_serveur.daemon=True t_serveur.start() print("la vie suit son cours") msg=queue_serveur.get() print(msg) #t_serveur.join() while(1): time.sleep(1)
Actuellement, j'utilise une variable globale mais je trouve ça moche..
merci d'avance pour votre aide !
Partager