У меня есть задача, примерно такая:
@task()
def async_work(info):
...
В любой момент я могу вызвать асинхронную _работу с некоторой информацией. По какой-то причине мне нужно убедиться, что одновременно выполняется только одна асинхронная работа _, а другой запрос вызова должен ждать.
Итак, я придумал следующий код:
is_locked = False
@task()
def async_work(info):
while is_locked:
pass
is_locked = True
...
is_locked = False
Но он говорит, что недопустим доступ к локальным переменным... Как это решить?