Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 2, 2023 17:08:53

robisho
Зарегистрирован: 2020-10-19
Сообщения: 60
Репутация: +  2  -
Профиль   Отправить e-mail  

можно ли вставить в потоки блокирующую функцию?

Добрый день.

 sem = threading.Semaphore(S_THREADS)
thr_lst = []
for ind, mail_to in enumerate(mail_list):
    if ind > 0 and ind % int(S_COUNTER_OF_SENT_EMAILS) == 0:
        send_for_my_email()
        print(f'Pause time = {S_PAUSE_TIME} sec')
        time.sleep(S_PAUSE_TIME)
    thr = threading.Thread(
        target=run_smtp_send_with_semaphore,
        args=(mail_to, sem),
        daemon=True
    )
    thr_lst.append(thr)
    thr.start()
[i_thr.join() for i_thr in thr_lst]

Можно ли после выполнения условий в if заблокировать выполнение потоков, пока send_for_my_email() не отработает и не пройдет time.sleep()? Пробовал локер вставить в send_for_my_email() - то же самое. Спасибо.

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version