- Run via simple
await
await async_func()- Run via
asyncio
import asyncio
asyncio.run(async_func())Note: Will complete a event loop when asyncio.run is called.
- Run via
asyncio.gather
import asyncio
asyncio.run(asyncio.gather(async_func()))- Run via asyncio event loop
import asyncio
loop = asyncio.get_event_loop()
loop.run_until_complete(asyncio.gather(async_func()))- When event is loop is closed
Ref: https://stackoverflow.com/a/45600858
import asyncio
asyncio.get_event_loop().close()
asyncio.get_event_loop().is_closed() # return True or False. When true old event loop fails stating `RuntimeError: Event loop is closed`
asyncio.set_event_loop(asyncio.new_event_loop())
loop = asyncio.get_event_loop() # or loop = asyncio.new_event_loop() if not calling above lineGeneral references: