Graham Matthews graham at
Thu Jun 10 17:12:44 CEST 1999

Tim Peters (tim_one at wrote:
: Back at Python 1.4, a set of patches was developed (by Greg Stein) that
: *did* remove the global lock.  This meant fine-grained locking of other
: stuff as needed, refcounts included.  The interpreter has changed quite a
: bit since then, so old numbers aren't quantitatively relevant anymore; but
: it was indeed a significant slowdown for single-threaded Python programs.
: It's particularly acute for Python because *everything* "is boxed"; nothing
: is exempt, and refcounting is never delayed.
The Sisal language has an interesting approach to this problem. Rather
than try to lock each refcount, it had n areas of memory you could
allocate out of. When changing area i you had to lock it, but all users
of the other areas could proceed without blocking. This was useful
for do reference count fiddling.


           As you grow up and leave the playground
       where you kissed your prince and found your frog
          Remember the jester that showed you tears
                   the script for tears

More information about the Python-list mailing list