Re: Python subinterpreters with separate GILs
On 11/02/2021 03.51, James Lu wrote: > Directly removing the Global Interpreter Lock (GIL) would break a lot > of libraries that implicitly assume it is there. What if Python had > "realms" that each had separate GILs? > > The "realms" (not sure if "subinterpreter" is the correct term here) > could share objects. Eric Snow and others have been working on that since 2017, https://www.python.org/dev/peps/pep-0554/ -- https://mail.python.org/mailman/listinfo/python-list
Re: Python subinterpreters with separate GILs
On 10Feb2021 21:51, James Lu wrote: >Directly removing the Global Interpreter Lock (GIL) would break a lot >of libraries that implicitly assume it is there. What if Python had >"realms" that each had separate GILs? > >The "realms" (not sure if "subinterpreter" is the correct term here) >could share objects. If realms can shared objects then they'd need the same GIL, because otherwise objects are not protected from concurrency via different realms. CPython code and C code, unless it has itself released the GIL, assumes it is the exclusive user of objects - that's what the GIL means. Separate GILs would mean different realms' GIL-holding threads could run against a shared object at the same time. Cheers, Cameron Simpson -- https://mail.python.org/mailman/listinfo/python-list
Python subinterpreters with separate GILs
Directly removing the Global Interpreter Lock (GIL) would break a lot of libraries that implicitly assume it is there. What if Python had "realms" that each had separate GILs? The "realms" (not sure if "subinterpreter" is the correct term here) could share objects. -- https://mail.python.org/mailman/listinfo/python-list