при использовании asyncio
для асинхронного,
import asyncio
async def nested(x):
print(x)
await asyncio.sleep(1)
async def main():
# Schedule nested() to run soon concurrently
# with "main()".
for x in range(100):
await asyncio.sleep(1)
task = asyncio.create_task(nested(x))
# "task" can now be used to cancel "nested()", or
# can simply be awaited to wait until it is complete:
await task
asyncio.run(main())
с await в основном, он будет печатать каждые 2 с,
без await в режиме nasted он будет печатать каждые 1 с.
без в ожидании задачи в основном, он будет печатать каждые 0 с, даже если объявлено asyncio.sleep .
Поддерживать абсолютно сложно, если мы новички в асинхронности.