Как стать автором
Обновить

Комментарии 17

Для того, чтобы повысить производительность воспользуемся модулем threading: с его помощью запустим потоки, выгружающие произведения по одному автору в одном процессе.

Так в потоке или в процессе?

А мы под линуксом или под виндой? :)

А для Python разве есть разница в данном случае? Я просто спрашиваю, без намеков :-)

Разница есть для понятия потока и процесса. В линуксе потоки являются процессами, в винде - это отдельные сущности.

Да нет, это-то я в курсе. И, в силу возраста, даже историю вопроса немного помню. Просто вот поток в Python не совсем то же, что поток в операционке (любой).

Здесь речь идёт о том, что все создаваемые потоки работают в рамках одного процесса – исполняемого файла

Похоже, запятая пропущена. Понятно. Спасибо за разъяснение.

И, для некоторых приложений, библиотека reactive

Соглашусь, asyncio действительно актуален, threading рассматривается как один из подходов, позволяющий снизить время выполнения программ,  решающих задачи, связанные с вводом-выводом

НЛО прилетело и опубликовало эту надпись здесь

Здесь threading рассматривается как один из подходов, позволяющий снизить время выполнения программ,  решающих задачи, связанные с вводом-выводом

НЛО прилетело и опубликовало эту надпись здесь

А если у вас 100-500-1000 заданий, то создаваться столько же потоков?

Тогда уж multiprocessing с Pool использовать, и wrapper для очередей из того же модуля.

Количество потоков не обязательно равно количеству задач

У вас в коде оно равно. Если будет больше авторов, то будет будет больше потоков. Почему бы сразу это не учитывать и учить делать правильно? Плюс ещё скорее всего ядро процессора будет загружено на 100% из за того что в главном потоке у вас while шпарит на всю катушку. Хотя бы какой то sleep поставьте чтобы ядро не загружалось бесполезной работой.

Спасибо за замечания, возможность загрузки ядра на 100% действительно существует при большом количестве задач, но так как количество обрабатываемых страниц тоже ограничено, этого не происходит

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории