A flexible context manager for python to handle graceful termination of python programs
Project description
Python Graceful Exit Context Manager
A flexible context manager for python to handle graceful termination of python programs
Installation
pip install -U graceful-exit
How to use:
Synchronous example
from graceful_exit.module import GracefulExit
from graceful_exit.helpers import wrap_in_system_exit
def main():
app = App()
with GracefulExit[App](
app=app, exit_handler=app.exit_handler_sync
) as wrapped_app:
wrapped_app.run_sync()
if __name__ == "__main__":
wrap_in_system_exit(main())
Asynchronous example
from graceful_exit.module import GracefulExit
from graceful_exit.helpers import wrap_in_system_exit
async def main():
app = App()
async with GracefulExit[App](
app=app, exit_handler=app.exit_handler_async
) as wrapped_app:
await wrapped_app.run_async()
if __name__ == "__main__":
wrap_in_system_exit(asyncio.run(main()))
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
graceful-exit-1.0.0.tar.gz
(5.0 kB
view hashes)