Потоков получается туева хуча => хочу ограничить количество одновременно активных потоков.
т.е.
пишу упроченно чтоб просто схему работы показать
threads=[]
Parser(Thread):
def run(self):
Parse(self.path)
def Parse(self, path):
#bla bla bla
for itm in ftplist:
if(isdir):
start_new_parser(new_path)
threads.remove(self)
def start_new_parser(path):
# Если число активных потоков больше, то тупо ждем уменьшения
while len(threads)>=5:
time.sleep(5)
pr=Parser(path)
threads.append(pr)
pr.start()
pr.join()
pr=Parser(path)
pr.start()
pr.join()
Есть ещё модуль Queue, но чесн говоря пока не пойму как сюда его приложить.
Как же все таки грамотно ограничить число потокв и построить очередь?
Прошу помощи.