Bonsoir,

Comment peut on faire pour relancer des threads après les avoir arrêtés?

Ci dessous le programme qui me permet de les lancer et de les arrêter.
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
45
46
47
48
49
50
51
52
53
54
 
 
# importations
from tkinter import Tk, Canvas, Button
 
import time
import AffThread4
 
thread2 = AffThread4.Afficheur('W')
thread3 = AffThread4.Compteur()
 
palette=['purple','cyan','maroon','green','red',\
'blue','orange','yellow','dark grey']
# --- définition des attributs de ligne et
# des fonctions gestionnaires d'événements : ---
 
class Menu():
 
#    couleur = palette [c] # couleur de la ligne
 
    def marche():
        end=True
#        thread1.start()
        thread2.start()
        thread3.start()
 
    def arret():
        end=False
#        thread1.stop()
        thread2.stop()
        threda3.stop()
 
#------ Programme principal -------
 
# Création du widget principal ("maître") :
laFenetre = Tk()
 
# création des widgets "esclaves" :
cannevas = Canvas(laFenetre,bg=palette[1],height=200,width=200)
cannevas.pack(side= "left")
 
boutonMarche = Button(laFenetre, text='Marche', command=Menu.marche)
boutonMarche.pack(padx=10, pady=10)
 
boutonArret = Button(laFenetre, text='Arrêt', command=Menu.arret)
boutonArret.pack( padx=10, pady=10)
 
boutonQuitter = Button(laFenetre, text='Quitter', command=laFenetre.quit)
boutonQuitter.pack(side="bottom", padx=5, pady=5)
 
 
laFenetre.mainloop () # démarrage du réceptionnaire d'événements
 
laFenetre.destroy () # destruction (fermeture) de la fenêtre
Ainsi que le message retourné après une tentative de Marche à nouveau.

RuntimeError: les threads ne peuvent être démarrés qu'une seule fois
Merci d'avance
Cordialement