Thread et tkinter

Thread et tkinter - Python - Programmation

Marsh Posté le 08-04-2016 à 10:52:03    

Salut,
 
Je suis novice en python, et je n'ai jamais eu à travailler avec des threads.
 
Je suppose ne pas être le premier à me casser les dents sur les threads en python, malgré tous les exemples que j'ai trouvé avec lesquels je me suis appuyé, notament sur developpez et jpvweb pour tenter de faire focntionner mon thread correctement, je n'y arrive décidément pas...
 
En gros pour m'exercer avec ce langage, j'ai fait un simple jeu (joueur vs ordinateur) avec tkinter, mon jeu fonctionne parfaitement tant que je ne recommence pas une partie, avec donc un thread déjà actif que je dois donc stopper (jeu en cours) et relancer (nouvelle partie), ou que je quitte le jeu en pleine partie.
 
Soit je me retrouve avec un thread supplémentaire à chaque relancement de partie ce qui fait qu'au bout de x relancement du jeu, ça freeze, soit je me retrouve avec un script bloquant (boucle, sleep, etc..)
 
J'ai également un problème avec le thread (je suppose) lors d'une partie en cours (fenêtre root) lorsque j'ouvre une fenêtre secondaire dépendante de la fenêtre maître, pour par exemple afficher les scores/options du jeu/etc..
 
Les exemples montrés avec l'utilisation des threads sont toujours brut, par ceci j'entends qu'ils ne sont pas couplés à une bibliothèque graphique ou autre.
 
Ma question porte donc sur la méthodologie à suivre pour utiliser un thread python avec tkinter ou autre bibliothèque graphique permettant de (déjà sur linux, windows on verra plus tard) :
 
- Relancer un thread en cours.
- Pouvoir arrêter/tuer un thread en pleine exécution.
- Pouvoir ouvrir une fenêtre tierce dépendante de la fenêtre maître sans qu'il ny ait de latence et que surtout cela n'entraîne de freeze de tkinter.
 
Éventuellement, si vous connaissez un simple jeu fonctionnant sur ce principe en python avec une bibliothèque graphique, dont on peu visualiser la source, je suis preneur.
 
Merci.


---------------
On croit souvent avoir vu le fond de la stupidité humaine, et il parfois nécessaire qu'on vous rappelle qu'elle n'a pas de fond.
Reply

Marsh Posté le 08-04-2016 à 10:52:03   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed