asyncio — Asynchronous I/O — Python documentation

From Get docs
Python/docs/3.8/library/asyncio

asyncio — Asynchronous I/O


Hello World!

import asyncio

async def main():
    print('Hello ...')
    await asyncio.sleep(1)
    print('... World!')

# Python 3.7+
asyncio.run(main())

asyncio is a library to write concurrent code using the async/await syntax.

asyncio is used as a foundation for multiple Python asynchronous frameworks that provide high-performance network and web-servers, database connection libraries, distributed task queues, etc.

asyncio is often a perfect fit for IO-bound and high-level structured network code.

asyncio provides a set of high-level APIs to:

Additionally, there are low-level APIs for library and framework developers to:

  • create and manage event loops, which provide asynchronous APIs for networking, running subprocesses, handling OS signals, etc;
  • implement efficient protocols using transports;
  • bridge callback-based libraries and code with async/await syntax.

Reference

Note

The source code for asyncio can be found in :source:`Lib/asyncio/`.