我正在运行以下代码。每个请求3个请求(我正在快速刷新的3个浏览器标签)。
我阻塞时,第一个time.sleep
花费60s运行所有请求。
第二个asycio.sleep
会立即运行所有3个请求,因为我没有等待。
第三个await asyncio.sleep
的第一个请求花费20s,第二个请求花费10s,第三个请求花费10s。即总计40秒。我希望我可以在20s左右运行大量请求,因为我不应该阻止?
import asyncio
import time
from datetime import datetime
from sanic import Sanic
from sanic.response import json
app = Sanic()
@app.route("/")
async def test(request):
# time.sleep(20)
# asyncio.sleep(20)
await asyncio.sleep(20)
return json({"hello": datetime.now().isoformat()})
if __name__ == "__main__":
app.run(host="0.0.0.0", port=8000)