[Python-Dev] RFC: PEP 475, Retry system calls failing with EINTR

Marko Rauhamaa marko at pacujo.net
Sun Aug 31 17:19:32 CEST 2014


Victor Stinner <victor.stinner at gmail.com>:

> Proposition
> ===========
>
> If a system call fails with ``EINTR``, Python must call signal
> handlers: call ``PyErr_CheckSignals()``. If a signal handler raises
> an exception, the Python function fails with the exception.
> Otherwise, the system call is retried.  If the system call takes a
> timeout parameter, the timeout is recomputed.

Signals are tricky and easy to get wrong, to be sure, but I think it is
dangerous for Python to unconditionally commandeer signal handling. If
the proposition is accepted, there should be a way to opt out.


Marko


More information about the Python-Dev mailing list