Я написал небольшое бэкэнд-приложение на Python (работающее на Google App Engine), чтобы служить в качестве настраиваемого удаленного планировщика для пары облачных функций Google, которые я использую в разных приложениях.Обычно функция запрашивает у бэкэнда расписание обратного вызова с заданной полезной нагрузкой.Все в порядке, за исключением того, что в бэкэнд-приложении потоки, отвечающие за обратный вызов моих облачных функций, часто умирают через несколько часов: https://imgur.com/a/8ulENjf
Само собой разумеется, что я не joining
потоки.
Я перечитал сигналы Python SIGINT, излучаемые серверами UNIX с Python, но мне нужно сначала исключить более простые опции.Соответствующая часть кода ниже:
import time
from datetime import datetime, timedelta
import sched
from threading import Thread
scheduler = sched.scheduler(time.time, time.sleep)
scheduler.enterabs(schedTime, 1, callback, kwargs=payload)
t.thread = Thread(target=scheduler.run) #dispatching scheduler main function to thread
t.start()