[gclist] ref-counting performance cost
Manoj Plakal
plakal@cs.wisc.edu
Fri, 1 Sep 2000 17:58:57 -0500
Bill Birch wrote (Sat, Sep 02, 2000 at 12:20:05AM +1000) :
> [Opinion: Despite the issues with reference counting it remains probably the
> most widely used resource management technique. (COM, JavaScript? are some
> famous examples). It is perhaps a shame that with so many of the programmers
> using it that there isn't better research available. ]
I would second that. Other places where RC is used:
- Embedded systems (perhaps real-time too?): The Lucent
Inferno environment's Dis VM uses RC as the primary
memory management technique.
- Distributed environments: probably RC would make sense
for distributed object systems like CORBA/COM and so on.
- Unix internals (perhaps other OSes too?)
- Intepreters: Awk, Perl, Python
- Applications: Adobe Photoshop (according to the GC Book),
are there others?
- "Smart-pointer" C++ libraries
I'm trying to figure out how popular RC really is.
Would it be correct to say that RC is the most widely used
"automatic" memory management technique outside academia?
Or is that a gross generalization?
Are there examples of important and widely-used commercial
applications that use mark-sweep/copying collectors? Note
that I'm not including freely available interpreters/compilers
of LISP/Scheme/ML/Java/their ilk. I'm more interested in
complete commercial applications that run on a client or on
a server.
JVMs (on server and client) are the only commercial examples
I can think of right now.
Manoj