Поток не может использоваться больше 1 раза (один и тот же). не смотря на ожидание окончания выполнения

Выходит ошибка, что поток не может использоваться несколько раз, хотя я ожидаю окончания выполнения всех потоков. Код:

import threading
def check(a, b):
    c=a+b
    print(c)
thread0=threading.Thread(target=check, args=(3, 2))
thread1=threading.Thread(target=check, args=(4, 2))
thread2=threading.Thread(target=check, args=(5, 2))
thread3=threading.Thread(target=check, args=(6, 2))
while True:
    thread0.start()
    thread1.start()
    thread2.start()
    thread3.start()
    thread0.join()
    thread1.join()
    thread2.join()
    thread3.join()

Ответы (1 шт):

Автор решения: Deniska SosiSka

Потоки можно запустить только один раз. Даже не смотря на то, что Вы дожидайтесь окончания выполнения потока, его повторный запуск не возможен. Если Вам после окончания выполнения всех потоков, нужно запустить их выполнение ещё раз, Вам необходимо будет создать их новый экземпляр. Пример:

while True:
    thread0 = threading.Thread(target=check, args=(3, 2))
    thread0.start()
    thread0.join()
→ Ссылка