我有两个功能。首先执行检查服务器服务的url检查。该功能作为sanic-scheduler任务完成,每2秒运行一次。
@task(timedelta(seconds=2))
def check_data_status():
...
isProcessed = True
https://github.com/asmodius/sanic-scheduler
第二个是请求处理程序:
def new_answer(request):
...
# we should wait and complete response only after isProcessed = True
response answer
new_answer
仅应在第一个函数isProcessed = True
之后完成响应。
我该怎么做。我正在使用Sanic。
答案 0 :(得分:0)
Sanic正在使用与asyncio兼容的事件循环,因此您可以为此使用asyncio的内置同步原语:https://docs.python.org/3/library/asyncio-sync.html。 Event似乎很适合您的情况。