Поток демона выживает после выхода из основной программы - PullRequest
0 голосов
/ 30 мая 2019

Я пытаюсь правильно завершить сценарий, включая потоки, которые он создает, но не могу найти решение. Я видел, что другие ответы упоминают, что настройка daemon = True исправляет эту проблему, но, похоже, она не работает для меня.

Ниже приведен фиктивный скрипт, который должен прекратить печатать «Hello» после того, как скрипт вызовет исключение и завершится, но потоку удается остаться в живых и непрерывно продолжать печатать «Hello» после этого.

from threading import Thread
from time import sleep

def main():
    Thread(target = thread, daemon = True).start()
    sleep(5)
    raise Exception()

def thread():
    while True:
        print('Hello')
        sleep(1)

main()
...