Je cherche à mettre fin à certains fils de discussion après un certain temps. Ces threads exécutent une boucle while infinie et, pendant ce temps, ils peuvent se bloquer pendant une durée importante et aléatoire. Le fil ne peut pas durer plus longtemps que le temps fixé par la variable duration. Comment puis-je faire en sorte que les threads s'arrêtent après la durée définie par la variable duration ?
def main():
t1 = threading.Thread(target=thread1, args=1)
t2 = threading.Thread(target=thread2, args=2)
time.sleep(duration)
#the threads must be terminated after this sleep
0 votes
Votre fil va-t-il être bloqué ?
0 votes
Les fils fonctionneront dans une boucle infinie. Il est possible que les threads dorment pendant une durée aléatoire. Les threads ne peuvent absolument pas fonctionner pendant la durée spécifiée au début du programme. Si les threads ne savent pas combien de temps ils ont dormi, comment sauront-ils quand s'arrêter ?
20 votes
Quelqu'un pourrait-il simplement répondre à sa question sans exiger qu'il fasse basculer le monde entier sur son axe ? Il y a d'autres programmeurs comme moi qui ont besoin d'une réponse à cette question, et ils ne peuvent absolument, positivement, pas le faire d'une autre manière (pour le moment).