Handle SIGINT in C and Python (Posting On Python-List Prohibited)
Victor Porton
porton at narod.ru
Wed Jan 31 23:57:48 EST 2018
Lawrence D’Oliveiro wrote:
> On Thursday, February 1, 2018 at 8:10:24 AM UTC+13, Victor Porton wrote:
>> Lawrence D’Oliveiro wrote:
>>
>>> The usual behaviour for POSIX is that the call is aborted with EINTR
>>> after you get the signal.
>>
>> That poll() is interrupted does not imply that Python will run its
>> pythonic signal handler at the point of interruption. That is a problem.
>
> * Python calls poll()
> * poll() aborted with EINTR
> * Python runs your signal handler
>
> Versus native C code:
>
> * your code calls poll()
> * poll() aborted with EINTR
> * your signal handler is run
>
> Where is there a fundamental difference?
I meant to call poll() from C code, not Python code. In this case when
poll() is aborted with EINTR, the pythonic signal handler does not run.
--
Victor Porton - http://portonvictor.org
More information about the Python-list
mailing list