kshnkvn
@kshnkvn
yay ✌️ t.me/kshnkvn

Как образом pool.starmap() запускает процессы?

Выполняю запуск скрипта следующим образом:
with multiprocessing.Pool(processes=4) as pool:
        results = pool.starmap(run_selenium, product(random.choice(urls), proxys))

В proxys хранится определенное кол-во прокси. На данный момент заметил то, что процессы запускаются не по списку прокси, а выборочно, соответственно у меня два вопроса:
1. Каждый элемент используется только один раз, или есть вероятность, что одно и тоже прокси может быть использовано более одного раза?
2. Можно как-то упорядочить процесс запуска, что-бы происходила не случайная выборка из списка, а по очереди?
  • Вопрос задан
  • 775 просмотров
Решения вопроса 1
tema_sun
@tema_sun
1. Они запускаются по списку, но какие-то процессы отрабатывают быстрее и получают следующий таск раньше, поэтому кажется, что не по порядку. Один и тот же таск не будет запущен разными процессами дважды.
2. Не использовать мультипроцессинг.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы