A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://mail.python.org/pipermail/python-dev/2018-September/155306.html below:

[Python-Dev] Questions about signal handling.

[Python-Dev] Questions about signal handling. [Python-Dev] Questions about signal handling.Eric Snow ericsnowcurrently at gmail.com
Mon Sep 24 19:24:02 EDT 2018
On Mon, Sep 24, 2018 at 3:10 PM Yury Selivanov <yselivanov.ml at gmail.com> wrote:
> On Mon, Sep 24, 2018 at 4:19 PM Eric Snow <ericsnowcurrently at gmail.com> wrote:
> > This matters to me because I'd like to use "pending" calls for
> > subinterpreters, which means dealing with signals *in*
> > Py_MakePendingCalls() is problematic.  Pulling the
> > PyErr_CheckSignals() call out would eliminate that problem.
>
> Py_MakePendingCalls is a public API, even though it's not documented.
> If we change it to not call PyErr_CheckSignals and if there are C
> extensions that block pure Python code execution for long time (but
> call Py_MakePendingCalls explicitly), such extensions would stop
> reacting to ^C.
>
> Maybe a better workaround would be to introduce a concept of "main"
> sub-interpreter? We can then fix Py_MakePendingCalls to only check for
> signals when it's called from the main interpreter.

I'm planning on making Py_MakePendingCalls() a backward-compatible
wrapper around a new private _Py_MakePendingCalls() which supports
per-interpreter operation.  Then the eval loop will call the new
internal function.  So nothing would change for users.

-eric
More information about the Python-Dev mailing list

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4