Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 17, 2020 15:45:44

ivin
Зарегистрирован: 2020-01-23
Сообщения: 20
Репутация: +  1  -
Профиль   Отправить e-mail  

помогите с "фонофым" потоком или процессом или еще как это называется..

для своего первого вопроса нашел простое решение:

import threading
def background_job():
while True:
my_function_1() # фоновые функции
my_function_2()
....
time.sleep(interval) # засыпаем на интервал в секундах
interval = 1800 # интервал в секундах
thread = threading.Thread(target=background_job, args=())
thread.daemon = False #True
thread.start()

все работает, для моего конкретного случая то, что надо.
Обнаружил одну особенность.. фоновые процессы останавливаются если в их коде есть print('чегонибудь').
Убрал вывод служебной инфы и все заработало.
Вопрос в посте #7 остается актуальным.


Отредактировано ivin (Фев. 17, 2020 15:56:45)

Офлайн

#2 Фев. 20, 2020 20:56:07

justicek
Зарегистрирован: 2020-02-19
Сообщения: 16
Репутация: +  0  -
Профиль   Отправить e-mail  

помогите с "фонофым" потоком или процессом или еще как это называется..

Добавьте себе планировщик apscheduler; обратите внимание на классы BackgroundScheduler, IntervalTrigger

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version