[Python-Dev] PEP-419: Protecting cleanup statements from interruptions

Antoine Pitrou solipsis at pitrou.net
Sun Apr 8 23:06:14 CEST 2012


Hello Paul,

Thanks for the PEP and the description of the various issues.

> An example implementation of a SIGINT handler that interrupts safely
> might look like::
> 
>     import inspect, sys, functools
> 
>     def sigint_handler(sig, frame):
>         if inspect.getcleanupframe(frame) is None:
>             raise KeyboardInterrupt()
>         sys.setcleanuphook(functools.partial(sigint_handler, 0))

It is not clear whether you are proposing this for the default signal
handler, or only as an example that third-party libraries or frameworks
could implement.

Regards

Antoine.




More information about the Python-Dev mailing list