Skip to content

minrk/asyncio-atexit

Repository files navigation

asyncio atexit

Adds atexit functionality to asyncio:

import asyncio_atexit

async def close_db():
    await db_connection.close()

asyncio_atexit.register(close_db)

atexit is part of the standard library, and gives you a way to register functions to call when the interpreter exits.

asyncio doesn't have equivalent functionality to register functions when the event loop exits:

This package adds functionality that can be considered equivalent to atexit.register, but tied to the event loop lifecycle. It:

  1. accepts both coroutines and synchronous functions
  2. should be called from a running event loop
  3. calls registered cleanup functions when the event loop closes
  4. only works if the application running the event loop calls close()

About

atexit, but for asyncio

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages