Необходимо ли, чтобы метод, объявленный как асинхронный, ожидал где-то, чтобы быть асинхронным?

#python #python-3.x #asynchronous

#python #python-3.x #асинхронный

Вопрос:

 from aiohttp import web
import json

async def handle(request):
    response_obj = { 'status' : 'success' }
    return web.Response(text=json.dumps(response_obj))

app = web.Application()
app.router.add_get('/', handle)

web.run_app(app)
  

Я получил этот фрагмент кода из этого руководства: https://tutorialedge.net/python/create-rest-api-python-aiohttp / и хотел знать, действительно ли это асинхронно.

Из того, что я знаю об asynio в Python, я думаю, что функция, объявленная как async , должна await где-то в ней передавать управление циклу событий, который затем выполнит что-то еще. Поскольку await в функции нет здесь handle , я думаю, что это не совсем асинхронно.

Комментарии:

1. Определите, что для вас означает, что что-то должно быть асинхронным.

2. @orlp Я ожидаю, что код не будет заблокирован при выполнении этой строки: return web.Response(text=json.dumps(response_obj)) Я ошибаюсь, предполагая это non-blocking IO == asynchronous ?