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

Paul Colomiets paul at colomiets.name
Mon Apr 9 08:54:20 CEST 2012


Hi Antoine,
On Mon, Apr 9, 2012 at 12:06 AM, Antoine Pitrou <solipsis at pitrou.net> wrote:
>> 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.
>
Only as an example. The reason is in "Modifying KeyboardInterrupt"
section under "Unresolved Issues". So it might be changed if there
is demand.
-- 
Paul


More information about the Python-Dev mailing list

AltStyle によって変換されたページ (->オリジナル) /