Как можно записать по другому асинхронную функцию?
# Почему вот так работает
async def loadpg(url_):
return session.get(url_, timeout=30)
obj = await loadpg(url_=link)
# А вот так нет
obj = await session.get(link, timeout=30)
urls = []
async def loader():
# Почему вот так работает
async def loadpg(url_):
return session.get(url_, timeout=30)
for url_ in urls:
obj = await loadpg(url_=link)
...
# А вот так нет
for url_ in urls:
obj = await session.get(link, timeout=30)
....
asyncio.run(loader())
MOV_UA, Поправьте ошибки в циклах там не совсем те переменные стоят. Касательно самой логики оба варианта рабочие но первый будет работать так же как синхронный код.
Как я понимаю будет работать в синхронном варианте так как не прописан явный await к методу get и поток попав в функцию остановит поток исполнения на ожидании ответа данного метода и не освободится. Хотя возможно он вернёт саму функцию и await loadpg(url_=link) будет работать корректно но вроде бы нет.