Как запускать потоки в цикле, чтобы они отрабатывали заново? Python
У меня есть код, в котором в цикле запускается n-е количество потоков. После того как все эти потоки отработают, мне нужно запустить этот цикл заново. Важно: Во время работы потоков, из списка l берутся разные значения (при помощи pop()) - нужно это, для того, чтобы в каждом потоке были разные значения. Когда все потоки завершают свою работу, мне нужно запустить заново n-е количество потоков с исходным списком l.
# запуск потоков
def start_class(self):
for j in range(2):
threading.Thread(target=Test, args=[self.l]).start()
class Test():
def __init__(self, l):
self.l = l
x = self.l.pop()
print(x)
l = [1,2,3,4,5,6]
Вывод:
6
5
4
3
и тд
Нужно, чтобы, например при запуске трех потоков, вывелось 6\5\4, а затем при повторном запуске еще трех потоков вывелось еще раз 6\5\4.
Источник: Stack Overflow на русском