[Python-ideas] PEP 554: Stdlib Module to Support Multiple Interpreters in Python Code

Stefan Krah stefan at bytereef.org
Tue Sep 12 10:53:15 EDT 2017


On Tue, Sep 12, 2017 at 05:35:34PM +0300, Koos Zevenhoven wrote:
> I don't see how the situation benefits from calling something the "main
> interpreter". Subinterpreters can be a way to take something
> non-thread-safe and make it thread-safe, because in an
> interpreter-per-thread scheme, most of the state, like module globals, are
> thread-local. (Well, this doesn't help for async concurrency, but anyway.)

You could have a privileged C extension that is only imported in the main
interpreter:


if get_current_interp() is main_interp():
    from _decimal import *
else:
    from _pydecimal import *



This is of course only attractive if importing the interpreters module
and calling these functions has minimal overhead.



Stefan Krah





More information about the Python-ideas mailing list