Python Threading avec objet Event
J'ai vu beaucoup de scripts en Python qui utilisent des Threads dans une classe et beaucoup d'entre eux utilisent le threading.Event()
. Par exemple:
class TimerClass(threading.Thread):
def __init__(self):
threading.Thread.__init__(self)
self.event = threading.Event()
def run(self):
while not self.event.is_set():
print "something"
self.event.wait(120)
Dans le while
boucle, pourquoi font-ils vérifier l'état s'ils ne sont pas ensemble self.event
?
source d'informationauteur user2724899
Vous devez vous connecter pour publier un commentaire.
Parce que quelqu'un d'autre va le mettre.
Vous commencez en général un fil dans une partie de votre application et de continuer à faire ce que vous faites:
Le thread t-il des trucs, pendant que vous faites de votre stuff. Si vous souhaitez résilier le fil que vous venez d'appel:
Et le fil va s'arrêter.
Donc la réponse est: événement, dans ce cas, n'est pas utilisé pour contrôler le fil de l'intérieur de l'objet thread lui-même. Il est utilisé pour contrôler le fil de l'extérieur (à partir de l'objet qui détient la référence à la discussion).