Уведомления

Группа в Telegram: @pythonsu

#1 Июль 27, 2015 09:51:22

k.palyanichka
Зарегистрирован: 2015-05-29
Сообщения: 20
Репутация: +  0  -
Профиль   Отправить e-mail  

многопоточность

Доброе утро

Прошу подсазать как можно выводить процесс выполнения многопоточной операции.
например: должно быть сто итераций, выполнено 10
Был бы благодарен за пример с использованием одной с библиотек:
multiprocessing.dummy
threading
multiprocessing

Спасибо!

Офлайн

#2 Июль 27, 2015 23:38:19

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

многопоточность

многопоточность…многопроцессность..все в одной куче. Ну да ладно.
Один из вопросов который нужно решить - как в произвольный момент понять сколько итераций было выполнено?
Второй как именно выбрать этот случайный момент, на каком участке кода должна происходить проверка?

Решение этих вопросов актуально при уже имеющимся коде.



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#3 Июль 29, 2015 08:42:31

k.palyanichka
Зарегистрирован: 2015-05-29
Сообщения: 20
Репутация: +  0  -
Профиль   Отправить e-mail  

многопоточность

Спасибо. Нашел ответ в concurrent.futures

with futures.ThreadPoolExecutor(max_workers=100) as executor:
fs = [executor.submit(get_data, url) for url in link]
for i, f in enumerate(futures.as_completed(fs)):
results.append(f.result())
if i%100==0:
sys.stdout.write("Выполнено: {} / {} \r".format(i, len(link)))

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version