def new_therad(eth_list, all_string, count):
list_all = []
for i in range(len(eth_list)):
if eth_list[i] in blacklist:
continue
list_all.append(Thread(target=get_data, args=(eth_list[i], all_string[i])))
blacklist.append(eth_list[i])
if len(list_all) == count:
print('Собрано нужное количество потоков, запуск')
for i in range(len(list_all)):
loop.run_until_complete(run_thread(list_all[i], i+1))
if len(blacklist) == MainFileLen.count:
pass
else:
new_therad(eth_list, all_string, count)
Вот функция, blacklist изначально пустой
async def run_thread(thread, num):
thread.start()
thread.join()
print(f'Поток номер {num} завершен')
При первом запуске все нормально, но на втором запросе функции начинает добавлять 100+ потоков, в итоге ошибка о нехватке записей в массиве. В многопоточности недавно, хотел бы узнать как это решить.