[Python-3000] Delayed reference counting idea

Marcin 'Qrczak' Kowalczyk qrczak at knm.org.pl
Tue Sep 19 17:50:29 CEST 2006


Brian Quinlan <brian at sweetapp.com> writes:

>> Reference counting is inefficient, doesn't by itself handle cycles,
>> and is impractical to combine with threads which run in parallel. The
>> general consensus of modern language implementations is that a tracing
>> GC is the future.
>
> How is reference counting inefficient?

It involves operations every time an object is merely passed around,
as references to the object are created or destroyed.

It doesn't move objects in memory, and thus free memory is fragmented.
Memory allocation can't just chop from from a single area of free memory.
It can't allocate several objects with the cost of one allocation either.

-- 
   __("<         Marcin Kowalczyk
   \__/       qrczak at knm.org.pl
    ^^     http://qrnik.knm.org.pl/~qrczak/


More information about the Python-3000 mailing list