bonjour a tous,
Je suis en train de galerer a creer une appli client/serveur (un classique me direz vous. sauf que la je dois integrer une interface graphique avec tkinter.
Mon probleme c'est que le mainloop de tkinter me bloque la reception des messages. En effet j'ai un thread de reception comme ceci
et cest donc la ligne avec le recv qui me bloque car lui me bloque l'ensemble du programme.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 class reception_c(th.Thread): def __init__(self,conn): th.Thread.__init__(self) self.connexion = conn condition = th.Condition() while 1: message = self.connexion.recv(255) print message if not message: pass print "detection de deconnection du serveur\n" break
quand je met
c'est l'interface graphique qui ne demarre pas et quand j'inverse, l'interface graphique demarremais pas l'ecoute, je n'y comprend rien.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2 thread_ecoute=reception_c(self.connexion) fenetre.mainloop()
J'ai recherch� du cot� de la socket blockante ou bien du cote des files d'attente de thread mais je n'arrive pas a les mettre en place.
voilou, si quelqu'un voit pourquoi �� bloque
merci d'avance
Partager