нужно чтобы каждая из них отрабатывала до тех пор, пока условие (внутри каждой джобы не прекратит выполняться), например
async def my_scheduler():
aioschedule.every().day.at("15:08").do(job_1)
aioschedule.every().day.at("15:08").do(job_2)
а джоб что-то типо такого (цикл while превращает код в синхронный):
async def job_1():
while True:
a = await some_func()
if a < 10:
break
else:
await asyncio.sleep(1)
Как лучше сделать джобу, чтобы сохранить асинхронность? Т.к. в таком случае другие джобы будут ждать эту
условно async def run_jobs(): jobs = [] await asyncio.gather(*jobs) но опять же, я не понял, что тебе нужно))))
попробую, спасибо) Смысл такой, что одна из джоб содержит while True и этот нюанс блочит асинхронность других джоб, т.е. пока while True в одной джобе не выполнится, то вторая джоба не отработает)
Почему while блочит что либо, если внутри него асинхронный код?
не знаю:) пытаюсь разобраться
почитай вообще про циклы, тут не так важна начинка цикла
Обсуждают сегодня