Есть две асинхронные функции, в обед циклы while True.
1 функция читает из базы переменную в цикле каждые 5 минут и далее с ней работает.
2 функция меняет эту переменную и записывает в базу каждые 2 минуты
Есть вероятность что 1 функция получит переменную а вторая изменит ее до того как закончится цикл в первой
вопрос как можно приостановить цикл во второй функции пока не выполнится цикл в первой
async def fun_1():
while True:
sql = "SELECT variable FROM table_variable WHERE ids = '1'"
variable_X = cursor.execute(sql).fetchall()[0][0]
variable_Y = variable_X + variable_Z
await asyncio.sleep(5)
variable_W = variable_X + variable_Z
await asyncio.sleep(5)
variable_F = variable_X + variable_Z
await asyncio.sleep(300)
async def fun_2():
while True:
variable_X = # Some code
# ЗАПИСЬ В ТАБЛИЦУ table_variable
await asyncio.sleep(180)