xx.yy ab - zz.uu cd
это не столь важно, так вот генерация списка всех записей из фала в 600 строк может занять ~3 мин., а 600 строк это самая малость. У вот я подумал как реализовать многопоточность. Я сделал так:
with open(ids,'r') as file: id = module_id.ID() for line in file: id_set = id.get_ip_set(line) for i in xrange(THREAD): TH = threading.Thread(target=thread_body,args=(id_set,)) TH.daemon = True owners.append(TH) TH.start() for TH in owners: TH.join() def thread_body(id_set): while len(id_set): print id_set.pop() pass
Хотел по завершению цикла, но так можно потерять потоки если не успеют добавиться новые записи, да и метод может быть вызван не 1 раз.
while len(id_set): print id_set.pop() else: generate()