[concurrency] Talk worth watching

Antoine Pitrou solipsis at pitrou.net
Sun Feb 19 17:57:09 CET 2012

> As Dave's post and comments make clear, a lot of the problem with
> switching Python's memory management comes from interfacing with external
> libraries.  As long as one of Python's primary goals is to make it easy
> to hook up external libraries, it will be difficult to get enough energy
> toward removing the GIL.

That's not necessarily a big problem. The ob_refcnt field could be kept
for a certain duration as an "external references counter" that would
prevent any disposal by the GC, until all 3rd party libraries have moved
to hypothetical new APIs.

In other words, reference counting doesn't have to be totally dropped,
it has to be removed from the interpreter's critical paths (such as the
eval loop, and many operations of builtin types).

More information about the concurrency-sig mailing list